Você está aqui: C++ ::: Win32 API (Windows API) ::: Mensagens e Notificações do Windows |
Entendendo a mensagem WM_CLOSEQuantidade de visualizações: 7971 vezes |
A mensagem WM_CLOSE é enviada a uma janela quando o usuário clica no botão Fechar ou pressiona Alt+F4. A forma mais comum de interceptar esta mensagem é na Windows Procedure da janela. Veja: LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){ switch(msg){ case WM_CLOSE: DestroyWindow(hwnd); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hwnd, msg, wParam, lParam); } return 0; } É importante notar que a interceptação da mensagem WM_CLOSE é útil quando queremos perguntar ao usuário se ele deseja mesmo fechar a janela, talvez para salvar algum arquivo ou evitar fechamentos acidentais. Assim, basta comentar a chamada à função DestroyWindow() para que o fechamento da janela seja cancelado: case WM_CLOSE: //DestroyWindow(hwnd); break; |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |