对于非模式对话框,一般的创建方法是定义一个成员变量,然后根据具体的对话框new出来,所以也就要对对话框的对象delete了,下面介绍一下创建和销毁对象的方法:
1.创建非模式对话框
(1)在需要创建的地方的头文件添加成员变量
CDisModalDlg *m_DismodalDlg ;
(2)在需要显示对话框的地方创建对话框
m_DismodalDlg = new CDisModalDlg();
m_DismodalDlg->Create(IDD_DIALOG_DISMODAL, NULL);
m_DismodalDlg->ShowWindow(SW_SHOWNORMAL);
2.销毁对话框对象
重构两个函数既可以
void CDisModalDlg::OnCancel()
{
DestroyWindow();
}
void CDisModalDlg::PostNcDestroy()
{
delete this;
CDialog::PostNcDestroy();
}