CreateDialog消息循环

hzieekicker 2010-09-27 10:45:28
“非模式对话框跟主窗口使用同一个消息循环,而因为非模式对话框的消息会被系统主动调用这个对话框的处理函数来处理”
现在的情况是CreateDialog是写在一个模态对话框的回调处理函数里
INT_PTR CALLBACK Main(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND hwndTab, hWndCurrent;
int i;

switch (message)
{
case WM_INITDIALOG:
{
...
hWndChildTab[0] = CreateDialog(g_hInst, MAKEINTRESOURCE(IDD_FRIEND), hwndTab, (DLGPROC)ChildTab);
hWndChildTab[1] = CreateDialog(g_hInst, MAKEINTRESOURCE(IDD_GROUP), hwndTab, (DLGPROC)ChildTab);
ShowWindow(hWndChildTab[0],SW_SHOW);
ShowWindow(hWndChildTab[1],SW_HIDE);
......

这样需要写消息分发吗
MSG msg;
while (GetMessage(&msg, NULL, 0, 0))
{
if ((hWndChildTab[0] == 0) || (!IsDialogMessage (hWndChildTab[0], &msg)))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}

写的话应该写哪里呢
...全文
89 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
烂番 2010-09-30
  • 打赏
  • 举报
回复
CreateDialog最后一个参数不就是 处理消息的回调吗
父窗口的默认WndProc会自动调用的
wade008 2010-09-30
  • 打赏
  • 举报
回复
为什么要这么写

7,655

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧