1.首先按照类向导生成一个程序
2.添加资源,插入对话框
3.在主对话框中添加一个按钮并添加消息映射
3.为对话框生成对应的类CModeDlg
4.在界面类中添加
CModeDlg *m_pDlg;
5.在自己添加的按钮消息函数中添加如下语句
void MFCApplication1Dlg::OnBnClickedMode() { m_pDlg=new CModeDlg; m_pDlg->Create(IDD_DIALOG1); ShowWindow(SW_SHOW); }
6.销毁对话框,也是最重要的:应重载CModeDlg类的OnCancel和PostNCDestroy两个虚函数
注意:OnCancel中不能调用基类的OnCancel,因为基类调用了EndDialog这个函数,而应调用DestroyWindow()
m_pDlg->DesroyWindow();
而重载的PostNCDestroy()中应销毁指针
delete m_pDlg;如此,调试,即可创建非模态对话框