У меня есть приложение Windows CE, которое регистрирует нажатия клавиш мобильного устройства. Есть кнопка для инициализации функциональности записи, которая заставляет главное окно свернуться, вызывая:
ShowWindow (hWnd, SW_MINIMIZE);
Прежде чем свернуть окно, я регистрируюсь на событие кнопки триггера (через пользовательский API). Пока приложение свернуто, я нажимаю несколько кнопок и нажимаю кнопку запуска, чтобы завершить сеанс. Когда я получаю событие триггерной кнопки, я звоню:
ShowWindow (hWnd, SW_MAXIMIZE);
Проблема в том, что окно не развернуто. Если я отлаживаю приложение, я вижу, что вызывается функция ShowWindow. Я мог бы вывести его на передний план через TaskManager, переключившись на приложение.
Может кто-нибудь объяснить причину этого и предложить какое-либо решение, которое я могу принять?
EDIT:
Решение:
Вызовите «SetForegroundWindow» перед вызовом ShowWindow и используйте SW_RESTORE вместо SW_MAXIMIZE. SW_MAXIMIZE не работает.
SetForegroundWindow (g_hWndMain);
ShowWindow (g_hWndMain, SW_RESTORE);