Delen via


Berichtcategorieën

Welke soorten berichten zijn er waarvoor u handlers schrijft? Er zijn drie hoofdcategorieën.

  1. Windows-berichten

    Dit omvat voornamelijk berichten die beginnen met het WM_ voorvoegsel, met uitzondering van WM_COMMAND. Windows-berichten worden verwerkt door vensters en weergaven. Deze berichten bevatten vaak parameters die worden gebruikt om te bepalen hoe het bericht moet worden verwerkt.

  2. Meldingen beheren

    Dit omvat WM_COMMAND meldingsberichten van besturingselementen en andere onderliggende vensters naar hun bovenliggende vensters. Een invoerveld verzendt bijvoorbeeld zijn ouder een WM_COMMAND-bericht met de EN_CHANGE-besturingsmeldingcode wanneer de gebruiker een actie heeft ondernomen die mogelijk tekst in het invoerveld heeft gewijzigd. De handler van het venster voor het bericht reageert op een passende manier op het meldingsbericht, zoals het ophalen van de tekst in de controle.

    Het framework routeert control-notification-berichten zoals andere WM_ -berichten. Een uitzondering hierop is echter het BN_CLICKED bericht over besturingsmeldingen dat door knoppen wordt verzonden wanneer de gebruiker erop klikt. Dit bericht wordt speciaal behandeld als een opdrachtbericht en gerouteerd als andere opdrachten.

  3. Opdrachtberichten

    Dit omvat WM_COMMAND meldingsberichten van gebruikersinterfaceobjecten: menu's, werkbalkknoppen en sneltoetsen. Het framework verwerkt opdrachten anders dan andere berichten en ze kunnen worden verwerkt door meer soorten objecten, zoals wordt uitgelegd in Opdrachtdoelen.

Windows-berichten en Control-Notification-berichten

Berichten in categorieën 1 en 2 — Windows-berichten en controlemeldingen — worden verwerkt door vensters: objecten van klassen die zijn afgeleid van klasse CWnd. Dit omvat CFrameWnd, CMDIFrameWnd, CMDIChildWnd, , , CViewen CDialoguw eigen klassen die zijn afgeleid van deze basisklassen. Dergelijke objecten kapselen een HWND in, een verwijzing naar een Windows-venster.

Opdrachtberichten

Berichten in categorie 3 — opdrachten — kunnen worden verwerkt door een breder scala aan objecten: documenten, documentsjablonen en het toepassingsobject zelf, naast vensters en weergaven. Wanneer een opdracht rechtstreeks van invloed is op een bepaald object, is het zinvol dat dat object de opdracht afhandelt. De opdracht Openen in het menu Bestand is bijvoorbeeld logisch gekoppeld aan de toepassing: de toepassing opent een opgegeven document bij het ontvangen van de opdracht. De handler voor de opdracht Openen is dus een lidfunctie van de toepassingsklasse. Zie Hoe framework een handler aanroept voor meer informatie over opdrachten en hoe ze naar objecten worden gerouteerd.

Zie ook

Berichten en opdrachten in het framework