关于对话框

2016-02-19 17:40 1 1 收藏

下面是个关于对话框教程,撑握了其技术要点,学起来就简单多了。赶紧跟着图老师小编一起来看看吧!

【 tulaoshi.com - 编程语言 】

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

  

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

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

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

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

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

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

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

来源:https://www.tulaoshi.com/n/20160219/1615795.html

延伸阅读
标签: PS PS教程
      横轴代表像素本身的两度,竖轴代表新调节的亮度。中间的直线代表目前输入与输出之间的关系。可以单击某个Channels,进行Curves设置,或按Shift键选择两个以上的Channels.     在图像中准备要调节亮度的地方按下鼠标,一个圆出现在Curves对话框中的直线上。拖动这个圆即可调节图...
标签: 办公软件
如果需要在Word 2000/2002中反复进行某项工作,就可以利用宏来自动完成这项工作。宏是一系列组合在一起的 Word 命令和指令,它们形成了一个命令,以实现任务执行的自动化,也就是说宏就是一条自定义的命令。 我们可以创建并执行宏,以替代人工进行的一系列费时而单调的重复性 Word 操作,自动完成任务。我们可以用宏录制器和“Visual Basi...
  其实很简单的,只要在按钮生成的时候,为其添加一个确认的属性即可. 比如在一个页面中有一个ID为提交的按钮, 只需要在页面加载的时候,添加如下代码:         Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load      ...
再谈 CFileDialog 对话框的定制 编译/NothTibet 原文出处:MSDN Magazine C++ Q&A 下载源代码         在《在线杂志》第十四期里,有一篇文章题为:“一个定制CFileDialog对话框的实例”,此文示范了如何定制“打开”文件对话...
关于 CFileDialog 对话框多选功能的一个问题 作者:Northtibet 下载源代码 最近有位读者来信指出:《在线杂志》第26期中有一篇文章:“再谈 CFileDialog 对话框的定制”,其例子程序有一个bug。如果多选时选中的文件过多,那么后面选中的文件将无效,也就是说即使也白选,点击“确定”后没有任何操作...

经验教程

477

收藏

70
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部