- 用向导创建一个单文档应用程序,然后再插入一个对话框。
- 为该对话框关联一个类(注意:在MFC中,对资源的操作是对一个类来完成的),为了能在该程序中打开此对话框,就像ABOUT对话框一样,就必须有一个打开对话框的事件,我们可以新建一个菜单,从菜单中打开此对话框。
- 在菜单中资源添加一个菜单,用AppWizard向导为该菜单添加一个消息响应函数。然后在该函数中写弹出对话框的代码。
- 创建一个模态对话框:
先为对话框类声明一个对象,如CTest dlg;
注:此时需要在该文件前面加上CTest类的头文件“Test.h”。
因为在该文件中,程序不能识别CTest是什么,CTest的定义在“Test.h"中。
调用DoModal()函数即可。
dlg.DoModal(); - 创建一个非模态对话框:
CTest *pdlg=new CTest();
pdlg->Create(IDD_DIALOG1,this);
pdlg->ShowWindow(SW_SHOW); //没有这句话对话框将不会显示
注:若将第一句写成CTest dlg将不会显示,因为dlg为一个局部变量,当函数执行完后就被销毁了。在模态对话框中则不同,程序执行到DoModal()时就暂停了,所以模态对话框在关闭之前不允许程序执行其它操作,而非模态对话框在没关闭之前允许程序执行其它操作。