У меня есть интересная (но неприятная) проблема.У меня есть приложение, которое использует полноэкранный режим (это предназначено для имитации стороннего полноэкранного POS-приложения).
Мое приложение отображает последовательность немодальных диалоговых окон поверх полноэкранного приложения.Он показывает один, скрывает его, затем показывает следующий, скрывает его и т. Д. После 3-го показа панель задач Windows появляется примерно через 1 секунду.Я не могу понять, почему.
Я удалил свой код обратно, чтобы посмотреть, что я делаю в своем обработчике OnNcActivate (который я использую для рисования окна со скинами), но я не думаю, что это проблемабыть привязанным к срокам.Я пытался запустить Spy ++, а также сам создавать сообщения в m WindowProc, и я до сих пор не вижу ничего странного, что могло бы дать мне какие-либо подсказки.
В моих журналах есть сообщения с идентификатором 0x36e, но я не могуне узнать, кем они должны быть.Я проверил различные списки идентификаторов сообщений и не могу их найти.Они не должны быть моими собственными идентификаторами сообщений, поскольку WM_USER не запускается до 0x400.
Я знаю, что могу обойти эту проблему, автоматически скрывая панель задач, но не могу попросить наших клиентов настроитьих панели задач для автоматического скрытия, чтобы обойти мою проблему.
Любые идеи, почему панель задач будет отображаться в связи с моими немодальными диалоговыми окнами?
РЕДАКТИРОВАТЬ: я полностью удалил свой нарисованный мной GUIкод и у меня все та же проблема.Я могу ошибаться, но может показаться, что когда я сначала вызываю ShowWindow (SW_HIDE), Windows пытается активировать «другое окно» (как сказано в MSDN).Я думаю, что в этом случае активируется панель задач, а не приложение POS.Если, с другой стороны, я открываю свое второе окно перед вызовом ShowWindow (SW_HIDE) для второго, то оно, похоже, ведет себя само.
Cheers Sparky