Maken van een venster Main

Het eerste venster een toepassing maakt is doorgaans het belangrijkste venster. U maakt het hoofdvenster met de CreateWindowEx functie, opgeven van het venster klasse, Vensternaam, venster stijlen, grootte, positie, menu handvat, sessiehandler en gegevens voor het aanmaken. Een hoofdvenster behoort tot een klasse van toepassing gedefinieerde venster, zodat moet u de klasse venster registreren en een venster procedure voorzien in de klasse voordat u maakt het hoofdvenster.

De meeste toepassingen gebruiken meestal de WS_OVERLAPPEDWINDOW stijl om te maken het belangrijkste venster. Deze stijl geeft het venster een titelbalk, een venstermenu een sizing rand, en minimaliseren en maximaliseren knoppen. De functie CreateWindowEx retourneert een handle die uniek het venster identificeert.

Het volgende voorbeeld wordt een hoofdvenster die behoren tot een venster toepassing gedefinieerde klasse. De naam van het venster, Main Window , verschijnt in de titelbalk van het venster. Door het combineren van de stijlen van het WS_VSCROLL en WS_HSCROLL met de WS_OVERLAPPEDWINDOW stijl, maakt de toepassing een hoofdvenster met horizontale en verticale schuifbalken naast de onderdelen die door de WS_OVERLAPPEDWINDOW stijl. De vier exemplaren van de constante CW_USEDEFAULT de oorspronkelijke grootte en positie van het venster op het systeem gedefinieerde standaardwaarden ingesteld. Als u NULL opgeeft in plaats van een menu-ingang, zal het venster het gedefinieerd voor de klasse venster menu hebben.

HINSTANCE hinst; 
HWND hwndMain; 
 
/ / Create van het belangrijkste venster. 
 
hwndMain = CreateWindowEx (0, / / geen uitgebreid stijlen "MainWClass", / / klasse naam "Main Window", / / venster naam WS_OVERLAPPEDWINDOW |   / / overlapt venster WS_HSCROLL |        / / horizontale schuifbalk WS_VSCROLL, / / verticale schuifbalk CW_USEDEFAULT, / / standaard horizontale positie CW_USEDEFAULT, / / standaard verticale positie CW_USEDEFAULT, / / standaard breedte CW_USEDEFAULT, / / standaard hoogte (HWND) NULL, / / geen bovenliggende of eigenaar venster (HMENU) NULL, / / klasse menu gebruikt hinstance, / / aanleg behandelen NULL);                  / / geen gegevens voor het aanmaken van venster als (! hwndMain) return FALSE; 
 
/ / Het venster met de opgegeven door het programma vlag show / / die begonnen met de toepassing, en stuur de aanvraag / / een WM_PAINT-bericht. 
 
ShowWindow (hwndMain, SW_SHOWDEFAULT); 
UpdateWindow(hwndMain) 
 

Merk op dat het voorgaande voorbeeld de functie ShowWindow roept na het maken van het belangrijkste venster. Dit is gedaan omdat het systeem niet automatisch het hoofdvenster weergegeven nadat u het hebt gemaakt. Door de vlag SW_SHOWDEFAULT aan ShowWindow, de toepassing kan het programma dat begon de toepassing instellen de aanvankelijke status van het hoofdvenster weergeven. De UpdateWindow functie verzendt het venster haar eerste WM_PAINT -bericht.

Index