在视类中捕捉OnDialog()消息:
void CDialogView::OnDialog()
{
// TODO: Add your command handler code here
CTestDlg dlg;
dlg.DoModal();
}
在模态对话框中,用户的ONOK和ONCANCEL消息都会将对话框窗口对象销毁(调用EndDialog函数)
void CDialogView::OnDialog()
{
// TODO: Add your command handler code here
CTestDlg *pdlg=new CTestDlg; //从堆中建立CTestDlg对象,可以改变其生命周期,销毁时需重载窗口类的PostNcDestroy函数
pdlg->Create(IDD_DIALOG1,this);
pdlg->ShowWindow(SW_SHOW);
}
在非模态对话框中,对话框窗口对象并没有销毁,只是隐藏起来(调用EndDialog函数),若想真正销毁,则需重写OnOK和OnCancel函数,并在其中调用DestroyWindow函数