多个非模态对话框的消息处理

我在用C调用windows API写程序的时候,遇到一些问题。程序需要同时显示多个非模态对话框,可是,这个时候消息处理就出现了问题。第二个被创建的对话框总是接收不到消息。另外,这几个对话框是相互重叠的,第二个位于顶层,但是在显示的时候第一个的一个本来应该被覆盖的按钮总是显示出来。
附上主函数消息循环的代码:

enter code here
while(GetMessage(&msg, hwnd, 0, 0))
{
    //分发窗口消息
    if((hDialogType == 0 || !IsDialogMessage(hDialogType, &msg))
        && (hDialogDetails == 0 || !IsDialogMessage(hDialogDetails, &msg)) 
        && (hDialogDonations == 0 || !IsDialogMessage(hDialogDonations, &msg)))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
}
return msg.wParam;
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问