MFC对话框的关闭方法

我要用MFC开发一个Windows桌面程序。在最初的对话框中点击某个按钮,弹出相应的模态对话框。怎样在这个模态对话框弹出后,自动关闭最初的对话框?谢谢!

把父对话框指针(this)传给模态对话框,模态对话框再给父对话框发关闭消息。
父对话框指针->SendMessage(WM_CLOSE);
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-29
有点无语,本身就比较简单的问题,在按钮的响应函数如对话框类CS dlg;
dlg.DoModal();
this->OnOk();或者如this->DestroyWindow()
把语句这在这些函数里就可以,到弹出对话框就没了
第2个回答  2012-01-29
2楼正解。
你可以可以写个关闭对话框的函数 如 functionxxx ,父对话框指针->functionxxx()
第3个回答  2012-02-02
不需要关闭,直接将对话框隐藏就可以了,我们都是这样处理的
第4个回答  2012-01-29
onOK();

MFC中新建的子对话框打开后如何关闭
关闭对话框: 1.CDialog::OnOK(); \/\/确定按钮按下 CDialog::OnCancel(); \/\/取消按钮被按下 2.CDialog::DestoryWindow(); 3.CDialog::EndDialog(0); 注:CDialog::CloseWindow(); 仅仅是最小化对话框 PostMessage(WM_CLOSE)

MFC对话框的关闭方法
把父对话框指针(this)传给模态对话框,模态对话框再给父对话框发关闭消息。父对话框指针->SendMessage(WM_CLOSE);

MFC对话框添加 关闭按钮
在对话框设计窗口,右键打开属性窗口,sys menu这个栏可以设置为true。

MFC 对话框关闭时候两次调用OnClose()
(1)点击IDOK按钮退出:先调用OnOK(),然后是OnDestory(),最后是PostNcDestroy()(2)点击IDCANCEL按钮退出:先调用OnCancel(),然后是OnDestory(),最后是PostNcDestroy()(3)点击右上角的关闭按钮退出:先OnClose(),然后是OnCancel(),再然后是OnDestory() ,最后是PostNcDestroy()...

mfc关闭非模态对话框
一般对话框有个“取消”按钮,响应这个按钮函数,注释掉里面默认的oncancel代码,替换为 ShowWindow (SW_HIDE);这样就隐藏了对话框。下一次,只需要调用ShowWindow(SW_SHOW);\/\/就可以重复打开

MFC单文档的初始对话框如何退出?
在 CMainFrame::OnCreate()函数里面进行对话框显示;关闭按钮的ID号设置为IDCANCEL;当对话框结束后,DoModal()返回值为IDCANCEL直接调用exit(0);

mfc如何点击一个按钮后,在新对话框弹出的同时,原对话框隐藏或关闭
今天这个问题好像回答过,最简单的办法:原对话框那个按钮设置为OnOK() \/\/这样点击就关闭了 在原对话框的DoModal()处,这样处理 int nResponse = dlg.DoModal();\/\/创建模态对话框,这里就开始显示了。if (nResponse == IDOK){ \/\/ TODO: Place code here to handle when the dialog is dlg2....

MFC中如果我想让对话框的关闭按钮无效,应该怎么弄
1、关闭系统菜单:多种方式,修改对话框模板,SetWindowLong,修改CREATESTRUCT结构等,举例:在OnInitDialog()中添加:SetWindowLong(this->m_hWnd, GWL_STYLE, GetWindowLong(this->m_hWnd,GWL_STYLE) & ~WS_SYSMENU );2、屏蔽消息,如Alt+F4关闭等:在OnSysCommand中的 else { CDialog::OnSysCommand...

MFC 中如何关闭当前打开的所有的非模式的对话框。
首先要确认“所有打开的非模态对话框”和主窗口的关系,如果这些对话框没有指明父窗口甚至存在其它多个父窗口,并且对话框的声明都是临时的,那么这个事情没法做。如果所有对话框的父窗口都是同一个主窗口,那么通过EnumChildWindows获取所有对话框并关闭是没有问题的,但这个方法相对复杂,需要使用回调函数。...

关闭MFC界面弹出对话框的问题!!!
你只需要在classes\/resources\/files这3个选项中选择resources这个资源视图,然后打开Dialog这个文件夹,然后再这个文件夹上右键--插入Dialog,然后就出来了一个只有确定和取消两个键的新的对话框,想更改布局可以直接拖动那两个按钮(控件),右键按钮(比如是)选择属性,把标题该成你想要的“YES”就行了啊...

相似回答