Vernietigen van een venster

De DestroyWindow functie kunt u een venster te vernietigen. Typisch, een toepassing verzendt het bericht WM_CLOSE voordat het vernietigen van een venster, het venster de gelegenheid om de gebruiker om bevestiging wordt gevraagd voordat het venster wordt vernietigd. Een venster die automatisch een venstermenu bevat ontvangt het WM_CLOSE bericht wanneer de gebruiker op sluiten in het venstermenu. Als de gebruiker bevestigt dat het venster moet worden vernietigd, roept de toepassing DestroyWindow. Het systeem stuurt het bericht WM_DESTROY naar de venster na het verwijderen van het scherm. In reactie op WM_DESTROY, het venster de gegevens worden opgeslagen en bevrijdt het toegewezen resources. Een hoofdvenster concludeert de verwerking van WM_DESTROY door de PostQuitMessage functie om het programma te stoppen.

In het volgende voorbeeld laat zien hoe om te vragen om bevestiging van de gebruiker voordat het vernietigen van een venster. In reactie op WM_CLOSE wordt het voorbeeld een dialoogvenster met knoppen Ja, OKen Annuleren . Als de gebruiker op Jaklikt, wordt DestroyWindow genoemd; anders, is het venster niet vernietigd. Omdat het venster verwoest een hoofdvenster is, roept het voorbeeld PostQuitMessage in reactie op WM_DESTROY.

case WM_CLOSE: / / maken in het berichtvenster. Als de gebruiker op / / de ja knop, vernietigen van het belangrijkste venster. 
 
    Als (MessageBox (hwnd, szConfirm, szAppName, MB_YESNOCANCEL) == IDYES) DestroyWindow(hwndMain); 
    keren anders 0; 
 
Case WM_DESTROY: / / de WM_QUIT bericht posten / / sluit de toepassing beŽindigen. 
 
    PostQuitMessage(0); 
    retourneren 0