无模式对话框中的MFC C ++显示模态

时间:2013-07-26 17:55:40

标签: c++ mfc dialog modal-dialog modeless

我有一个无模式对话框。当我尝试从那里执行.DoModal()时,它会显示对话框,但它仍然允许您与无模式对话框进行交互。

这是我创建无模式对话框的方式:     MyMainEditorWindow =新的CMyMain(this);     MyMainEditorWindow->创建(CMyMain :: IDD,GetDesktopWindow());     MyMainEditorWindow->的ShowWindow(SW_SHOW);

要做一个模态,从那个无模式窗口,我做

CMyDlg myDlg; int dialogbox = myDlg.DoModal();

有什么办法可以做我想要的吗?在无模式窗口中,来自它的对话框使其窗口等待直到它被确定。

1 个答案:

答案 0 :(得分:2)

您需要在模态对话框的构造函数中设置父窗口。 CDialog构造函数的文档说,如果将其设置为NULL,它将使用主应用程序窗口作为父项,如果未指定,则使用默认值为NULL