如何在MFC中同时创建两个活动对话框?

时间:2013-08-26 14:42:43

标签: c++ mfc dialog

我正在尝试在同一时间在MFC中运行两个窗口 - 当我运行我的应用程序时。 在BOOL CrTestTaskApp :: InitInstance() - 我的应用程序的init函数我写道:

CrStartDlg sDlg;
sDlg.DoModal();
CrMainDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();

if (nResponse == IDOK)
{

}
else if (nResponse == IDCANCEL)
{

}

但是在我先关闭之后,第二个对话框才出现。而且,如果我在BtnClick()第一个对话框上制作Modal()第二个对话框 - 我不能在它们之间切换..只活动一个......

请帮帮我。

1 个答案:

答案 0 :(得分:3)

您需要无模式对话框,而不是DoModal方法创建的模式。

使用CDialog::Create创建无模式对话框,并充当常规窗口,响应通过共享消息队列/泵分派的消息。