MFC 怎样可以使父窗口关闭 子窗口不关闭

如题所述

如果窗口之间存在父子关系,则父窗口关闭子窗口必然关闭,因为父窗口关闭意味着整个程序退出,所以,你这种要求应该实现不了,很多应用程序隐臧一个窗口显示一个窗口并不是真正的关闭前一个窗口,仅仅是把他隐臧起来而已,而且显示着的这个窗口还要改变父窗口。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-06-07
两个办法:
1.“假关闭”:
捕捉关闭的消息,判断是否有子窗口存在,如果存在,就隐藏主窗口,否则就真的退出程序。(切记子窗口关闭的时候要去退出程序)。
2.将子窗口做为新的进程。

MFC 怎样可以使父窗口关闭 子窗口不关闭
如果窗口之间存在父子关系,则父窗口关闭子窗口必然关闭,因为父窗口关闭意味着整个程序退出,所以,你这种要求应该实现不了,很多应用程序隐臧一个窗口显示一个窗口并不是真正的关闭前一个窗口,仅仅是把他隐臧起来而已,而且显示着的这个窗口还要改变父窗口。

mfc:如何在对从话框中打开一个新对话框后将之前的对话框关闭
如果你真的想把父窗口关闭,不妨将子窗口做成另外一个exe,打开另外一个exe也就意味着打开另一个进程。不会对子窗口造成影响。

在C++的MFC中如何在用DoModal()调用另外一个窗口后把原来的窗口...
主窗口可采用非模式对话框方式,第二个窗口用模式或非模式都可以。主窗口显示时,可以调对象的ShowWindow(SW_SHOW),等第二个窗口弹出后,再调主窗口对象的ShowWindow(SW_HIDE)。如果需要在第二个窗口中单击退出程序时,直接调主窗口的OnClose(),由于OnClose()函数是主窗口的Protected函数,你可以在...

mfc中如何在父窗口中隐藏一个子窗口
如果隐藏将SW_SHOW更改为SW_HIDE

MFC DoModal()显示后子窗口 父窗口被隐藏?想操作父窗口 怎么办
因为你使用了非模式对话框,所以其运行的原则就是该对话框被关闭之前(例如按确定按钮),都不能操作后面的父窗口。所以解决的方式很简单,就是实例化一个模式对话框,然后显示它。翻下手边的书吧,相信你能搞定。

MFC关闭当前对话框,新手跪求
描述太含混,问题不明确。猜测一下:你多层对话框都是在确定按钮中调用下一个对话框的DoModal实现的。如果是这种情况,不在确定按钮响应函数实现就可以不关闭对话框了(实际就是不调用CDialog::OnOK()这一行代码即可)

MFC 弹出非模态窗口后,父窗口怎么禁止点击等操作
EnableWindow(HWND, FALSE);其中HWND就是父窗口的窗口句柄。菜鸟大道,开启你的C\/C++学习之路!欢迎各位新人的到来哦~

请问MFC中子对话框怎么控制父对话框中的控件?
你在创建子窗口的时候可以通过构造函数把父窗口的指针传给子窗口,比如:CDlg m_Dlg(this);也可以在子对话框中用GetParent函数即时获取父窗口的指针或者窗口句柄;通过获取到的指针或者窗体句柄就可以控制父窗口的控件了。但通常的做法是获取父窗口的指针\/句柄后给父窗口发个消息,让其在消息响应函数中做...

在MFC中怎么使主页面最小化而子窗口不最小化?求解
加入对话框。 然后点击设计对话框属性 最大 最小 你看看那里面都有 设置True or flase 就可以

如何实现MFC关闭子窗口时刷新父窗口的内容
刷新工作交给父窗口自己做,在父窗口中:{ CFriendDlg dlg;dlg.domodal();refreshlist(); \/\/ 刷新好友列表 } 什么?子窗口是非模态窗口?那就发消息:在父窗口中自定义消息#define WM_MSG WM_USER+0x01 添加消息处理函数 LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam)加入消息映射ON_MESSAGE(WM_...

相似回答