首页 > 代码库 > vc创建模态和非模态对话框

vc创建模态和非模态对话框

模态对话框的创建 

创建模态对话框需要调用CDialog类的成员函数:DoModal,该函数的功能就是创建并显示一个模

态对话框,关闭模态对话框的函数是EndDialog,该函数需要一个参数,这个参数就是DoModal

函数的返回值。

CTestDlg dlg;    
dlg.DoModal();   //打开模态对话框

dlg.EndDialog(IDOK);//关闭模态对话框,相当于在模态对话框上点击了“确定”按钮

创建非模态对话框
创建非模态对话框需要利用CDialog类的Create成员函数。
BOOL Create(LPCTSTR lpszTemplateName,CWnd* pParentEnd=NULL);
BOOL Create(UINT nIDTemplate,CWnd* pParentWnd =NULL)

Create函数的第一个参数可以是对话框资源的ID,或对话框模板的名称,第二个参数指定了对

话框的父窗口,如果其值是NULL,对话框的父窗口就是主应用程序窗口。

CTestDlg  dlg;
dlg.Create(IDD_DIALOG1,this);

注意:当利用Create函数创建非模态对话框时,还需要调用ShowWindow函数将对话框显示
出来。即需要加上   dlg.ShowWindow(SW_SHOW);