Я использую специальный цикл сообщений для настраиваемого диалогового окна. Когда диалоговое окно открыто и окно закрыто, я хотел бы достичь второго, если ниже, если (msg.message == WM_CLOSE).
for(;;)
{
if(PeekMessage(&msg, 0, 0, 0, PM_NOREMOVE))
{
if(msg.message == WM_CLOSE)
{
GetMessage(&msg, 0, 0, 0);
break;
}
else
{
if(GetMessage(&msg, 0, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
if(msg.message == msgEnd)
break;
}
}
Проблема в том, что код в этом случае никогда не достигается. Я попытался заменить WM_CLOSE другим сообщением, чтобы увидеть, была ли проблема в цикле, но другое сообщение работало нормально. Что не так?