谢谢?
------解决方案--------------------------------------------------------
假设对话框类名为:CTestDlg
1,如果是模态对话框:
CTestDlg ctd;//创建该对话框对像
ctd.DoModale();
2,如果是非模态的:
CTestDlg *p_ctd= new CTestDlg();//创建对话框的对像指针
p_ctd->Create(IDD_READING,this);//指针调用Create()函数,ID号为对话框的.
p_ctd->ShowWindow(SW_SHOWNA);//()中的参数可以用来改变对话框的显示模式(具体参见MSDN中ShowWindow()函数)
模态对话框创建后一定要在用户单击完对话框上的"确定"或"取消"或"关闭",也就是对它进行了响应并关闭后,程序才能继续执行.
而非模态的则是创建完后程序可以继续执行,对话框可以成为后台对话框.所以也可以用函数来关闭
p_ctd->DestroyWindow();
(要详细地看看模态与非模态的区别.)
------解决方案--------------------------------------------------------
Create 是 mfc 对dialog的封装,不是api ,要想了解dialog的具体操作,看msdn platfom sdk 关于dialog的帮助
modal dialog
大致流程直接调用 domodal大致也如此
DialogBox(hinst, MAKEINTRESOURCE(DLG_DELETEITEM), hwnd, (DLGPROC)DeleteItemProc) api
modeless
先要 CreateDialog 再 showwindow mfc create里也一样
CreateDialog(hinst,MAKEINTRESOURCE(DLG_GOTO),
hwnd, (DLGPROC) GoToProc);
ShowWindow(hwndGoto, SW_SHOW);