我有一个从CFormView
派生的子窗口。在OnCreate()
函数的某些条件下,我想关闭此窗口。关闭子窗口时避免MessageBox
我试过2种选择:
int CFilterWindow::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFormView::OnCreate(lpCreateStruct) == -1)
return -1;
//Trial-1
if (!IsInitialized())
{
DestroyWindow();
return 0;
}
//Trial-2
if (!IsInitialized())
{
return -1;
}
return 0;
}
在这两种情况下,窗口被关闭,但我的系统会返回"Failed to create empty document."
如何避免此消息?
使用Debug + Break All并查看Call Stack调试器窗口以查看您如何到达那里。这是你的代码中的文档/视图编程缺陷。你创建了一个文档,但是当MFC试图为它创建视图时,你说“你看不到它”。您应该尽早停止此操作,不允许先创建文档。 –
你能告诉我应该预期什么吗?我创建了文档,然后我创建了视图,但由于某些条件,在OnCreate()函数内关闭了相同的视图。 – Nipun