Когда пользователь свернет окно (используя поле в строке заголовка или выбрав опцию «Свернуть» в системном меню), ваше приложение получит сообщение WM_SYSCOMMAND
.Параметр wParam
этого сообщения будет содержать значение SC_MINIMIZE
, которое указывает конкретный тип запрашиваемой системной команды.В этом случае вас не волнует lParam
.
. Поэтому вам нужно настроить карту сообщений, которая прослушивает сообщение WM_SYSCOMMAND
с wParam
, установленным на SC_MINIMIZE
.Получив такое сообщение, вы должны выполнить свой код, чтобы свернуть приложение в область уведомлений панели задач, и вернуть 0 (указывая, что вы обработали сообщение).
Я не уверен, что такое GUI Frameworkвы используетеПример кода может выглядеть очень по-разному для разных наборов инструментов.Вот что вы можете использовать в прямом приложении Win32 C:
switch (message)
{
case WM_SYSCOMMAND:
if ((wParam & 0xFFF0) == SC_MINIMIZE)
{
// shrink the application to the notification area
// ...
return 0;
}
break;
}