MFC弹出模拟对话框
Windows对话框分为两类:模态对话框和非模态对话框。
模态对话框是这样的对话框,当它弹出后,本应用程序其他窗口将不再接受用户输入,只有该对话框响应用户输入,在对它进行相应操作退出后,其他窗口才能继续与用户交互。 非模态对话框则是,它弹出后,本程序其他窗口仍能响应用户输入。非模态对话框一般用来显示提示信息等。
接下用用VS2010创建示例:
1、新建MFC应用程序:

2、在MFC应用程序向导中设置应用程序类型为“基于对话框”类型:

然后,后面直接默认,点击完成即可;
3、编辑DialogEx对话框如下所示:

4、在资源视图中添加模拟对话框:

选中DialogEx.rc右键选择添加对话框操作:

添加完效果如图所示,可以在Dialog资源视图中看到有个新加的对话框:

5、编辑Dialog对话框内容:

6、为Dialog对话框添加类:(右击->添加类):

在此命名为CMyDialog;
7、回到主对话框IDD_DIALOGEX_DIALOG为“弹出模拟对话框”添加按钮点击的事件处理程序:
在函数void CDialogExDlg::OnBnClickedButton1()中添加如下代码:
INT_PTR nRes; // 用于保存DoModal函数的返回值 CMyDialog myDlg; // 构造对话框类CMyDialog的实例 nRes = myDlg.DoModal(); // 弹出对话框
并且在DialogExDlg.cpp中包含包含CMyDialog的头文件:#include "MyDialog.h",保存后,即可查看运行效果;
8、运行:


浙公网安备 33010602011771号