Destruir uma janela

Você pode usar o DestroyWindow função para destruir uma janela. Normalmente, um aplicativo envia a mensagem WM_CLOSE antes de destruir uma janela, dando a janela a oportunidade para solicitar ao usuário para confirmação antes que a janela é destruída. Uma janela que inclui automaticamente um menu de janela recebe a mensagem WM_CLOSE quando o usuário clica em Fechar no menu janela. Se o usuário confirma que a janela deve ser destruída, o aplicativo chama DestroyWindow. O sistema envia a mensagem WM_DESTROY para a janela após removê-lo na tela. Em resposta a WM_DESTROY, a janela salva seus dados e libera quaisquer recursos que ele alocado. Uma janela principal conclui seu processamento de WM_DESTROY chamando o PostQuitMessage função para encerrar o aplicativo.

O exemplo a seguir mostra como solicitar confirmação do usuário antes de destruir uma janela. Em resposta a WM_CLOSE, o exemplo exibe uma caixa de diálogo que contém Sim, OKe Cancelar botões. Se o usuário clicar em Sim, DestroyWindow é chamado; caso contrário, a janela não é destruída. Porque a janela que está sendo destruído é uma janela principal, o exemplo chama o PostQuitMessage em resposta a WM_DESTROY.

caso WM_CLOSE: / / Create a caixa de mensagem. Se o usuário clicar em / / o botão Sim, destruir a janela principal. 
 
    se (MessageBox (hwnd, szConfirm, szAppName, MB_YESNOCANCEL) = = IDYES) DestroyWindow(hwndMain); 
    else return 0; 
 
caso WM_DESTROY: / / colocar a mensagem WM_QUIT / /Quit encerrar o aplicativo. 
 
    PostQuitMessage(0); 
    retornar 0