MFC开发IM--MFC非模态对话框的创建及显示
我们需要在原对话框CMFC_Kinect_TrackingDlg设计一个按钮,点击这个按钮后弹出一个非模态对话框Color_Based_SettingDlg,
并且同时两个对话框都是激活状态,都可以自由操作,步骤入下:
1.在头文件MFC_Kinect_TrackingDlg.h中包含Color_Based_SettingDlg.h
2.在MFC_Kinect_TrackingDlg.h中的类CMFC_Kinect_TrackingDlg添加一个Color_Based_SettingDlg对话框的成员变量
并声明为私有类型。
- private:
- //new a Color_Based_SettingDlg obj pointor
- Color_Based_SettingDlg * m_pColorBasedSetting;
3.添加构造函数。如果cpp文件中函数太多,我们可以在Class View上半个视图中找到CMFC_Kinect_TrackingDlg类(在MFC_Kinect_TrackingDlg.cpp中),再在下半个视图中找到其构造函数双击,中间客户区域即可马上切到构造函数的实现处。在构造函数体中添加m_pColorBasedSetting= NULL;
4. 在构造函数下方添加一个析构函数,找寻位置和方法和构造函数一样,另外,还需要在MFC_Kinect_TrackingDlg.h中对析构函数进行声明,位置在构造函数下方。
- //析构函数
- CMFC_Kinect_TrackingDlg::~CMFC_Kinect_TrackingDlg()
- {
- if( NULL != m_pColorBasedSetting)
- delete m_pColorBasedSetting;
- }
5. 接下来就可以在对话框 CMFC_Kinect_TrackingDlg的消息处理函数OnBnClickedButtonColorSetting中创建非模态对话框
并添加要处理的函数。
- if(NULL == m_pColorBasedSetting)
- {
- m_pColorBasedSetting = new Color_Based_SettingDlg;
- //define Color_Based_SettingDlg dialog
- m_pColorBasedSetting-> Create( IDD_DIALOG_BASE_COLOR_SETTING,this);
- }
- m_pColorBasedSetting->SetWindowPos( NULL, 0, 0, 0, 0, SWP_NOSIZE|SWP_NOMOVE );
- m_pColorBasedSetting->ShowWindow( SW_SHOW );
- m_pColorBasedSetting->SetActiveWindow();
MFC开发IM--MFC非模态对话框的创建及显示相关推荐
- 关于模态对话框和非模态对话框的创建、显示,以及和父对话框的传值
当然网上关于这方面的技术博文非常多,此处我只是进行一下小记,再加一点自己的体会,方便以后查询. 一.模态对话框 1.创建及显示 模态对话框是一种阻塞式的对话框,即没有处理完该对话框,不能对其他地方进行 ...
- 鸡啄米vc++2010系列11(非模态对话框的创建)
上一节鸡啄米讲了模态对话框及其弹出过程,本节接着讲另一种对话框--非模态对话框的创建及显示. 鸡啄米已经说过,非模态对话框显示后,程序其他窗口仍能正常运行,可以响应用户输入,还可以相互切换.鸡啄米会将 ...
- MFC模态与非模态对话框的创建与销毁
1.模态对话框的创建 (1)添加新的模块对话框资源,在ResourceView标签中右键项目选择"add resource...",添加一个对话框资源,并修改其ID(主要为了方便后 ...
- vc++开发学习二(模态对话框和非模态对话框的创建和销毁)
①.模态对话框与非模态对话框的区别: 模态对话框:一旦创建模态对话框,则无法操作父对话框,只能操作当前创建的模态对话框,关闭当前模态对话框后才可以操作父对话框非模态对话框:和模态对话框相反,创建该对话 ...
- 我的YUV播放器MFC小笔记:非模态对话框建立及窗口间传值
YUV播放器中,显示界面(主窗口)和设置界面分离,所有参数均在Setting子窗口设置,故需要主窗口和子窗口中实现参数传递.下面是方法. 1. 在主窗口CYUVPlayerDlg类中定义子窗口变量: ...
- 非模态对话框的创建于销毁
橡皮线的工作原理:就必须不停地在新位置画出线段,并把以前的画出的线段擦掉.如果背景是单一的颜色,那就好办了,只需要构造一支背景颜色的画笔和一支前景颜色的画笔,然后首先用背景色画笔擦出上次的线段,再用前 ...
- VS2019/MFC编程入门之对话框:向导对话框的创建及显示
上一讲讲了属性页对话框和相关的两个类CPropertyPage类和CPropertySheet类,对使用属性页对话框做准备.本节将为大家演示如何创建向导对话框. 仍然以前面的"加法计算器&q ...
- MFC-创建模态对话框和非模态对话框的方法
注意:以下实例中创建模态对话框时没有用create(id号)绑定资源id,而非模态对话框中要用create(id号)绑定对话框资源id. 在MFC中对话框有两种形式,一个是模态对话框(model di ...
- mfc入门基础(六)创建模态对话框与非模态对话框
参考博客: VS2010/MFC编程入门之十一(对话框:模态对话框及其弹出过程)-软件开发-鸡啄米 一.创建模态对话框 1.接着上节中的test02的例子来讲,找到test02.cpp文件,找到函数I ...
最新文章
- java怎么返回xml_java – 如何从Web服务返回XML
- bzoj2243 [SDOI2011]染色
- HTML5实战——canvas 绘制钟表
- Linux 命令之 usermod -- 用于修改用户的基本信息
- 事件捕获(capture)和冒泡事件(Bubble)
- 传动系统结构简图_立式砂磨机与卧式砂磨机的结构特点比较
- 7-153 找鞍点 (20 分)
- Linux卸载搜狐,搜狐的linux笔试题
- fcpx教程从入门到精通「3」预览窗口的认识
- CVS常用命令速查手册
- 简单版WAF代码学习
- 发那科机器人点位编辑_【发那科】发那科机器人指令编辑大全
- 常用4种基础统计图表——饼图、条形图、直方图、折线图
- ireport 循环_iReport制作报表1:iReport Designer的使用
- PPT修行之路(二)-素材库
- 记一次muse-ui 使用
- oracle中排序--拼音、笔画、偏旁部首
- 解决Mscomctl.ocx丢失的问题
- 去北美读PHD前给你泼的“冷水”,有志于去北美深造的人读一读
- python 时间格式datetime、str与date的相互转换