На главной диалоговой панели со стилями STYLE WS_OVERLAPPEDWINDOW | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_VISIBLE | DS_SETFONT | DS_CENTER EXSTYLE WS_EX_DLGMODALFRAME | WS_EX_APPWINDOW есть дочерняя (на ней рисуется с использованием OpenGL) диалоговая панель STYLE WS_OVERLAPPED | WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_TABSTOP | WS_VISIBLE (WS_CHILD - чтобы она изменяла положение на экране синхронно с главной) при щелчке по которой правой кнопкой вызывается выпадающее меню с параметром handle of owner window - хэндлом последней панели. при выборе пункта меню создаётся модальная диалоговая панель со стилями STYLE WS_POPUP | WS_VISIBLE | DS_SETFONT | DS_MODALFRAME | DS_CENTER EXSTYLE WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW и сама разрушается. (выполняется долгая операция в отдельном потоке, которая сообщениями изменяет состояние прогресс-бара на последней и в конце посылает сообщение об окончании, которое вызывает DestroyWindow, в обработчике которого EndDialog). При исчезновении последней главное окно сворачивается в иконку на панели задач, какого родителя для модальной диалоговой панели я б не задавал. "ShowWindow(, SW_SHOW) после выхода из DialogBox для главного окна" пожалуйста не предлагать. Я просто хочу разобраться в проблеме, как сделать так, чтобы не сворачивалось без финтов ушами.
кстати то же самое происходит даже если я помещаю вызов этой модальной диалоговой панели в обработчик выпадающего меню (не временного) главного окна.