De Frame venster Procedure schrijven

Het venster procedure voor een MDI-framevenster is vergelijkbaar met die van het hoofdvenster van de toepassing van een niet-MDI. Het verschil is dat een frame venster procedure alle berichten het niet aan de DefFrameProc functie in plaats van aan de DefWindowProc functie verwerkt wordt doorgegeven. Bovendien moet de frame venster procedure ook doorgeven sommige berichten die dit verwerkt, met inbegrip van die welke zijn vermeld in de volgende tabel.

Bericht Reactie
WM_COMMAND Hiermee activeert u het MDI-subvenster dat de gebruiker kiest. Dit bericht wordt verzonden wanneer de gebruiker een MDI-subvenster in het menu venster van het MDI-framevenster kiest. De begeleidende dit bericht venster-id identificeert het MDI-subvenster worden geactiveerd.
WM_MENUCHAR Hiermee opent u het menu venster voor het actieve MDI-subvenster wanneer de gebruiker op de alt +-(minus) toetsencombinatie.
WM_SETFOCUS De focus wordt doorgegeven aan het MDI-venster-client, die op zijn beurt naar de actieve MDI-subvenster doorstuurt.
WM_SIZE Past de grootte van het clientvenster MDI te passen in het clientgebied nieuwe van het framevenster. Als het frame venster procedure het formaat van het venster MDI-client naar een ander formaat, moet het niet de boodschap doorgeven aan de functie DefWindowProc.

De frame venster procedure in Multipad heet MPFrameWndProc. De behandeling van andere berichten door MPFrameWndProc is vergelijkbaar met die van niet-MDI toepassingen. WM_COMMAND berichten in Multipad worden verwerkt door de lokaal gedefinieerde CommandHandler functie. Voor opdracht berichten die multipad niet verwerkt, roept CommandHandler de functie DefFrameProc . Als Multipad geen DefFrameProc standaard gebruikt, activeren de gebruiker een onderliggend venster van het menu venster omdat het WM_COMMAND-bericht verzonden door te klikken op van het venster menu-item verloren zou niet.

Index