Такие приложения как Kaspersky Antivirus 5, при закрытии окна свертываются (анимация минимизации) в трей бар, что на мой взгляд очень наглядно показывает, что приложение не закрылось, а осталось в памяти и доступен через иконку в статус-зоне.
Вопрос: есть ли средства операционки для выполнения данной формы минимизации - или надо ручками, как я наизобретал:
| Код | switch (message) { case WM_CLOSE: WINDOWPLACEMENT wp; SetWindowLong(hWnd, GWL_EXSTYLE, (GetWindowLong(hWnd, GWL_EXSTYLE) & !WS_EX_APPWINDOW) | WS_EX_TOOLWINDOW);
GetWindowPlacement(hWnd, &wp); wp.ptMinPosition.x = 1023; // по идее надо узнать конечно где сейчас таскбар и конкретно статус зона wp.ptMinPosition.y = 767; // -- " -- wp.flags = WPF_SETMINPOSITION; wp.showCmd = SW_SHOWNA; SetWindowPlacement(hWnd, &wp);
ShowWindow(hWnd, SW_MINIMIZE);
// todo: убрать апп-кнопку на таксбаре - ну это понятно как...
return 0;
|
|