Registratie van kind en Frame venster klassen

Een typische MDI-toepassing moet registreren twee venster klassen: een voor haar framevenster en een voor haar kind windows. Als een toepassing ondersteunt meer dan één soort document (bijvoorbeeld een werkblad en een grafiek), moet het een venster klasse voor elk type registreren.

De klassenstructuur voor het framevenster is vergelijkbaar met de klassenstructuur voor het hoofdvenster in niet-MDI toepassingen. De klassenstructuur voor de onderliggende MDI-vensters verschilt lichtjes van de structuur voor kind Vensters in niet-MDI toepassingen als volgt:

Het volgende voorbeeld ziet u hoe Multipad registreert de frame en kind venster klassen.

BOOL WINAPI InitializeApplication() {WNDCLASS wc; 
 
    / / Het venster frame klasse registreren. 
 
    WC.Style = 0; 
    WC.lpfnWndProc = (WNDPROC) MPFrameWndProc; 
    WC.cbClsExtra = 0; 
    WC.cbWndExtra = 0; 
    WC.HINSTANCE = hInst; 
    WC.HICON = LoadIcon (hInst, IDMULTIPAD); 
    WC.hCursor = NULL LoadCursor((HANDLE), IDC_ARROW); 
    WC.hbrBackground (HBRUSH) = (COLOR_APPWORKSPACE + 1); 
    WC.lpszMenuName = IDMULTIPAD; 
    WC.lpszClassName = szFrame; 
 
    If (!.RegisterClass (amp; wc)) return FALSE; 
 
    / / De onderliggende MDI-venster klasse registreren. 
 
    WC.lpfnWndProc = (WNDPROC) MPMDIChildWndProc; 
    WC.HICON = LoadIcon (hInst, IDNOTE); 
    WC.lpszMenuName = (LPCTSTR) NULL; 
    WC.cbWndExtra = CBWNDEXTRA; 
    WC.lpszClassName = szChild; 
 
    If (!.RegisterClass (& wc)) return FALSE; 
 
    return TRUE; 
} 
 

Index