模态对话框:当它弹出后,本应用程序其他窗口将不再接受用户输入,只有该对话框响应用户输入,在对它进行相应操作退出后,其他窗口才能继续与用户交互。(比如:word中的“另存为”)

非模态对话框:它弹出后,本程序其他窗口仍能响应用户输入。非模态对话框一般用来显示提示信息等。

通过两个按钮分别弹出:

//模态对话框按钮是点击事件void CMFC2Dlg::OnBnClickedButton1()
{// TODO: 在此添加控件通知处理程序代码//弹出模态对话框  有阻塞功能可以顺利弹出//首先给要弹出的窗口添加一个类,会自动生成该窗口的.cpp和.h文件//1.要弹出对话框,首先要知道对话框属于哪个类,属于的类就是我们取的IDD后的名称,在类视图中查看类/*2.要先引用该类的头文件,在MFC中引用类的头文件时,如果起的类名时以大C开头,引用头文件的时候不要写大C,直接写大C后面的名称.h,但是后面引用类名时还是要加上大C*/CDIALOG1 dlg;//用CDIALOG1类声明出来一个对象,命名为dlgdlg.DoModal();//以模态方式进行弹出()/*模态对话框就是在其没有被关闭之前,用户不能与同一个应用程序的其他窗口进行交互,直到该对话框关闭。对于非模态对话框,当被打开时,用户既可选择和该对话框进行交互,也可以选择同应用程序的其他窗口交互。*/}void CMFC2Dlg::OnBnClickedButton2()
{// TODO: 在此添加控件通知处理程序代码//非模态对话框  无阻塞功能,弹出闪现;//解决办法:把CSHOW cshow;放在成员变量里,即放在主窗口Dlg.h文件中的private下,注意要在头文件中引用该类的头文件//CSHOW cshow;//cshow.Create(IDD_SHOW);//创建窗口只能创建一次,多次会崩掉//解决办法:把改行代码放到初始化函数中去,即放在CMFC2Dlg::OnInitDialog里cshow.ShowWindow(SW_SHOWNORMAL);}

MFC实现弹出模态对话框和非模态对话框(基于对话框)相关推荐

  1. 关于MFC下多线程,在线程中创建非模态对话框以及消息传递

    2019独角兽企业重金招聘Python工程师标准>>> 关于MFC下多线程,在线程中创建非模态对话框以及消息传递 问题: 1.在子对话框中它的子对话框需要实现脱离父对话框的束缚.(因 ...

  2. C++ MFC深入详解之----模态对话框与非模态对话框

    对话框的种类 有两种类型的对话框:模态( Modal)对话框和非模态( Modeless)对话框 模态对话框 模态对话框是指当其显示时,程序会暂停执行,直到关闭这个模态对话框后,才能继续执行程序中其他 ...

  3. MFC中的模态对话框与非模态对话框的消息循环及消息传递问题(都可以通过SendMessage传递消息)

    注意:非模态和模态对话框都有自己的消息响应过程函数WindowPro,只不过他们的调用模态是自己的消息泵,非模态是由父窗体或父窗体的上一级的消息泵来调用.模态对话框和非模态对话框都可以通过SendMe ...

  4. MFC应用模态对话框和非模态对话框

    关于对话框呢 第一个了解的就是模态对话框和非模态对话框 定义的话: 1.模态对话框工作状态:当它获得焦点时,将垄断用户的输入,在完成本对话框之前,用户无法对本程序的其他部分进行操作. 2.非模态对话框 ...

  5. MFC创建模态对话框与非模态对话框 执行顺序

    创建模态对话框 CDialog::DoModal virtual int DoModal(); 返回值: 整数值,指定了传递给CDialog::EndDialog 的nResult参数值.该函数用于关 ...

  6. MFC模态对话框和非模态对话框

    下面是一个我的手写的模态对话框和非模态对话框图: 模态对话框是指当其显示时,程序会暂停执行,直到关闭这个模态对话框后,才能继续执行程序中其他任务.非模态对话框是指当其显示时,允许转而执行程序中其他任务 ...

  7. html弹出非模式窗口,JavaScript模态窗口和非模态窗口(转)

    JavaScript中弹出的窗口有模态窗口和非模态窗口.模态窗口就是打开一个子窗口,如果这个子窗口不关闭,就不能操作它的父窗口,原来程序暂停执行,直到这个模态窗口关闭 后才回到原来程序继续.非模态的就 ...

  8. MFC中模态对话框和非模态对话框的差别

    在MFC中有模态对话框和非模态对话框,那这两种有什么差别呢. 又都是用于什么场合呢. 首先,要弄清楚2种对话框是怎样创建的. 然后要弄清楚2种对话框有什么差别,可能从表面上看,模态会堵塞主对话框.可原 ...

  9. [MFC]模态对话框与非模态对话框

    MFC中有两种类型的对话框: 模态 对话框和非模态 对话框. 模态 对话框是指当其显示时,程序会暂停执行,直到关闭这个 模态 对话框后,才能继续执行程序中其他任务. (如我们常见的"打开文件 ...

  10. MFC模态窗口与非模态窗口

    MFC模态窗口与非模态窗口 开发工具与关键技术:C++.VisualStudio 作者:何任贤 撰写时间:2019年07月25日 模态窗口的意思是指主窗口在打开模态窗口后,没法再操作主窗口,这就是模态 ...

最新文章

  1. Win32API 窗口程序的创建7大步骤
  2. 112.局部变量和全局变量在内存中是怎样存储的?113.WLAN无线传输协议
  3. OpenGL编程指南10:组合运动示例1—创建太阳系模型
  4. VC里的#define new DEBUG_NEW
  5. P6 EPPM 16.1 安装和配置指南 1
  6. 多学一点(十二)——使用extundelete恢复Linux下误删除文件
  7. Spinnaker:云原生多云环境持续部署的未来
  8. CentOS 6.5设置静态IP教程 并且可以ping通
  9. vue2 确认框 MessageBox 弹框 删除确认取消
  10. 远程桌面连接不能复制粘贴怎么办 远程控制电脑无法复制粘贴的解决方法
  11. mac外接显示器wifi无法正常使用的问题
  12. 蓝桥杯——蓝肽子序列
  13. 28个UI免费漂亮的切换开关PSD下载
  14. Wix安装包制作-个人总结
  15. matlab中如何转动三维图_matlab如何画三维图
  16. 附录3:实验结果与简单分析
  17. Luna16数据集下载
  18. Android自带模拟器设置Proxy
  19. 用计算机汇编语言的程序是经过,汇编语言程序
  20. 用户信息管理系统(Web实践项目)

热门文章

  1. 恢复重装系统后的EFS加密文件
  2. 3.23.3 线性回归的从零开始实现|Pytorch简洁实现
  3. PTA 7-274 魔镜
  4. Unity - 官方2D动画(2D Animation Package)文档
  5. ibatis中resultMap和resultClass的区别 以及parameterClass 的取值
  6. Mock server是什么
  7. 卡方分布上侧α分位数的近似公式及其证明
  8. PPT模板的动画去掉或更改
  9. [转载]丢掉鼠标-Mac神软Alfred使用手册1_我是亲民_新浪博客
  10. “ IMY”是什么意思,如何使用?