关于对话框

百炼称钢

百炼称钢

2016-02-19 17:40

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

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

  

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

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

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

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

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

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

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

展开更多 50%)
分享

猜你喜欢

关于对话框

编程语言 网络编程
关于对话框

折叠对话框

办公软件
折叠对话框

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

将非模态对话框显示为模态对话框

电脑网络
将非模态对话框显示为模态对话框

自绘对话框

C语言教程 C语言函数
自绘对话框

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

vc的对话框-

编程语言 网络编程
vc的对话框-

超链“确认”对话框

Web开发
超链“确认”对话框

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

成功男士 人要稳 步要准 - QQ图案分组

成功男士 人要稳 步要准 - QQ图案分组

把JS,vbs中的数组传递给COM组件,Activex

把JS,vbs中的数组传递给COM组件,Activex
下拉加载更多内容 ↓