关于对话框

问:程序是基于对话框的,我显示两个对话框,一个在另一个后面,下面是我的做法:

CMyApp::InitInstance ()
{
   ...
   CMyDialog1 dlg1;
   m_hMainWnd = &dlg1;
   int result = dlg1.DoModal ();
   CMyDialog2 dlg2;
   result = dlg2.DoModal ();
   ...
}

在上面的代码中,首先一个对话框得到了适当地调用,但第二个对话框却没有,比如:调用 dlg2.DoModal()返回-1,当我逐步跟踪时我发现WM_QUIT被加入到消息队列 中,我不知道 为什么会这样.

答:1)因为MFC需要m_hMainWnd成员函数必须指向一个带有效窗口句柄的对象,如果没有,它将 会自己给自己发送WM_QUIT消息来中断自己.

2)我知道为什么会这样,当你设置m_pMainWnd指向dlg1时,MFC认为你的Dialog1是主窗口. 当用户关闭对话框时,MFC认为用户想退出程序,因为m_pMainWnd指向的窗 口被关闭了.

你认为不工作是因为应用程序在两个DoModal()调用后会退出.InitInstance()会返回 m_pMainWnd在向导中已经被使用,你不能去象你那样的使用.

时间: 2024-10-11 12:32:19

关于对话框的相关文章

jquery删除提示框弹出是否删除对话框

 想必大家对删除提示框并不陌生吧,也就是大家常见的弹出是否删除的对话框,下面使用jquery来实现下,感兴趣的朋友不要错过  代码如下: /**  * 删除草稿  */  function deleteDraft(the,id){  $.messager.confirm('删除草稿提醒', '</br>确定删除这篇草稿吗?</br></br>',function(r){  if(r){  $.ajax({  type : "post",  url :

php实现执行某一操作时弹出确认、取消对话框

 当执行某一操作比如确认或者取消时如何弹出对话框,针对这个需求,下面使用php来实现下,感兴趣的朋友不要错过 代码如下: <script>  function del(){  if(confirm("确定要删除吗?")){  alert('删除成功!');  return true;  }else{  return false;  }  }  </script>  <button onclick="del()">确定</bu

dhtmlx中怎么在弹出的对话框上浮在最上层

问题描述 dhtmlx中怎么在弹出的对话框上浮在最上层 dhtmlx中怎么在弹出的对话框上浮在最上层?

Win8弹出是否只查看安全传送的网页内容对话框怎么办

  1.在打开支付宝.网上银行等涉及安全的网页时,经常会弹出对话框提示"是否只查看安全传送的网页内容?". 2.打开IE浏览器,选择工具--Internet选项. 3.安全->Internet->自定义安全级别. 4.在"其他"分类里边找到"显示混合内容"选"启用".

WinForm控件开发总结(八) 为属性提供弹出式编辑对话框

前几篇文章我们一直在讨论如何更方便的编辑复杂类型的属性,在这个过程中我介绍了类型转换器以 及如何制作自己的类型转换器来实现属性值的串行化和实现子属性的编辑.对于Scope这种级别的复杂属 性,一个类型转换器就已经足够了,但是对于更为复杂的属性,单单使用类型转换器已经不足以应付了, 比如我们常用的Font属性. 在这种情况下,我们就需要提供更为复杂的编辑方式,比如属性编辑对话框,你还记得Font对话框吗 ?现在我们就来看看如何实现更复杂的属性编辑.复杂的属性编辑器分为两种类型,一种是弹出式模态对

MFC 基础知识:主对话框与子对话框(一)

(仅供使用VS MFC初学者学习,高手莫见笑)在MFC中通常会使用点击一个按钮,弹出一个子对话框的基础知识,这些都是学习MFC的基础知识,也是非常重要的知识,这里我就简单的讲讲这些知识. 一. 设置主对话框 1.文件-新建项目(我设置的过程名为:EditSet)-MFC应用程序-该页面使用"基于对话框"-完成即可.2.在"资源视图"中打开Dialog对话框,删除"TODO:在此处放置对话框控件"和"确定"."退出&q

MFC VS2012对话框背景填图

这是使用VS 2012编写MFC对话框程序的教程,主要是关于图片处理方面的操作,这些在MFC游戏.图片处理.软件编写中是经常要用到的知识. 一.创建项目 文件-新建项目-MFC应用程序-该页面使用"基于对话框"-完成即可. 注意:取消"使用Unicode库",否则在使用AfxMessageBox会报错,没有一个可以转换的参数类型,要加AfxMessageBox(_T("..")).运行结果: 二.添加背景Bitmap资源 在"资源视图&

Java Swing 弹出对话框的使用

Swing 中提供了 JOptionPane 类来实现类似 Windows 平台下的 MessageBox 的功能,利用 JOptionPane 类中的各个 static 方法来生成各种标准的对话框,实现显示出信息.提出问题.警告.用户输入参数等功能. 这些对话框都是模式对 话框:   ConfirmDialog   ---  确认对话框,提出问题,然后由用户自己来确认 ( 按 "Yes" 或 "No" 按钮 ) InputDialog   ---  提示输入文本

MFC对话框应用程序显示图像

1 首先创建一个基于对话框的MFC应用程序MFCDlgTest 2 打开资源视图,插入新的对话框,修改ID为IDD_SHOWIMGDLG,右击对话框,添加类CShowImgDlg.在ShowImgDlg.h头文件中包含<atlimage.h>头文件,并建立CImage对象 #include <atlimage.h> private: CImage image; 3 删除对话框中的无关控件,添加一个新按钮"打开图像",修改其ID为IDC_OPEN,并添加事件处理程

Android使用Activity用作弹出式对话框Dialog

转载请表明出处:http://blog.csdn.net/lmj623565791/article/details/23116115 Android中可用于实现对话框的有Dialog,PopupWindow,Activity. 下面简单介绍下,Dialog比较方便,但是显示位置比较固定,有时不能满足我们的需求. 例子:(消除了背景) [html] view plaincopy <resources>       <style name="dialog" parent=