炫彩界面库论坛

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2395|回复: 2

循环调用模态对话框

[复制链接]

该用户从未签到

发表于 2013-4-14 18:15:34 | 显示全部楼层 |阅读模式
模态对话框里面有一个
MSG msg;
while( IsWindow(hWnd) && GetMessage(&msg, NULL, 0, 0) )
{
  TranslateMessage(&msg);
  DispatchMessage(&msg);
}

循环。

当我在一个函数里面不停的调用一个模态对话框的时候,比如说
for(int i = 0;i < 5;i++)
{
  Test dlg;
  dlg.CreateMain();
  int nRet = XModalWnd_DoModal(dlg.m_hWindow);
  if (nRet == XMB_OK)
  {
  }
}
当第一次dlg退出的时候没有问题,第二次XModalWnd_DoModal,会收到上一次退出时没来得及接受的消息WM_QUIT,导致
XModalWnd_DoModal函数失败。

该用户从未签到

发表于 2013-4-24 10:32:06 | 显示全部楼层
GetMessage(&msg, NULL, 0, 0)修改一下就好了,第二个参数改一下,改成本身的HWND句柄就行,WINDOW(hWindow)->hWnd

该用户从未签到

 楼主| 发表于 2013-4-24 16:37:52 | 显示全部楼层
谢谢.我试一下
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|炫彩界面库 ( 鄂ICP备2023014763号-1 )

GMT+8, 2024-9-20 00:59 , Processed in 0.068898 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表