MFC创建非模态子窗口

简介:

在第一个窗口中,创建第二个窗口,代码如下:

1
2
3
4
5
6
7
#include "second.h"//第二个窗口头文件  
void  CtestDlg::OnBnClickedButton6()  
{  
     SecondDig *pDig =  new  SecondDig;  
     pDig->Create(IDD_Second);  
     pDig->ShowWindow(SW_SHOWNORMAL);  
}

如果想在第二个窗口中销毁子窗口。先处理如下两个虚函数,方法如下:

1
2
3
4
5
6
7
8
9
10
11
12
void  SecondDig::PostNcDestroy()  
{  
     // TODO: 在此添加专用代码和/或调用基类  
     CDialogEx::PostNcDestroy();  
     delete  this ;  
}  
void  SecondDig::OnCancel()  
{  
      // TODO: 在此添加专用代码和/或调用基类  
      DestroyWindow();  
      //CDialogEx::OnCancel();  
}

重写上面两个虚函数。如果是按钮中完成,在按钮点击消息中调用OnCancel()或用如下代码

退出整个程序:

1
2
PostQuitMessage(0); //或者  
//AfxGetMainWnd()->SendMessage(WM_CLOSE,0,0);
















本文转自Chinayu201451CTO博客,原文链接:http://blog.51cto.com/9233403/1970595  ,如需转载请自行联系原作者
相关文章
11 MFC - 模态对话框
11 MFC - 模态对话框
75 0
|
6月前
|
数据安全/隐私保护
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
551 4
|
8月前
|
C++ UED 开发者
逆向学习 MFC 篇:视图分割和在 C++ 的 Windows 窗口程序中添加图标的方法
逆向学习 MFC 篇:视图分割和在 C++ 的 Windows 窗口程序中添加图标的方法
110 0
|
9月前
MFC视图窗口动态分割
MFC视图窗口动态分割
76 2
|
9月前
MFC的视图窗口
MFC的视图窗口
47 0
|
9月前
MFC窗口创建机制
MFC窗口创建机制
44 0
QT应用编程: Qt自定义界面并提升窗口部件基类
QT应用编程: Qt自定义界面并提升窗口部件基类
811 0
QT应用编程: Qt自定义界面并提升窗口部件基类
|
C++
MFC模态和非模态对话框编程
MFC中对话框有两种形式,一个是模态对话框(model dialog box),一个是非模态对话框(modeless dialog box)。  一、模态对话框(model dialog box)         在程序运行的过程中,若出现了模态对话框,那么主窗口将无法发送消息,直到模态对话框退出才可以发送。
1313 0
|
调度 Windows C#
理解 UWP 视图的概念,让 UWP 应用显示多个窗口(多视图)
原文 理解 UWP 视图的概念,让 UWP 应用显示多个窗口(多视图) UWP 应用多是一个窗口完成所有业务的,事实上我也推荐使用这种单一窗口的方式。不过,总有一些特别的情况下我们需要用到不止一个窗口,那么 UWP 中如何使用多窗口呢? 本文内容 为什么 UWP 需要多窗口? UWP 视图的概念 UWP 多窗口 管理多个 UWP 视图 参考资料 为什么 UWP 需要多窗口? 多窗口在传统 Win32 的开发当中是司空见惯的事儿了,不过我个人非常不喜欢,因为 Windows 系统上的多窗口太多坑。
1662 0
|
C# Windows
WPF判断当前窗体是否为模态
原文:WPF判断当前窗体是否为模态 WPF判断当前窗体是否为模态   1、使用System.Windows.Interop.ComponentDispatcher.IsThreadModal来判断 参照:https://social.
1155 0