Înregistrarea copilului și cadru fereastra clase

O aplicație tipică de MDI trebuie să se înregistreze două fereastra clase: unul pentru fereastra sa cadru și unul pentru Ferestre său copil. Dacă o aplicație acceptă mai multe tipuri de document (de exemplu, o foaie de calcul și o diagramă), trebuie să înregistreze o clasă de Ferestre pentru fiecare tip de.

Structura de clasă pentru fereastra cadru este similar cu structura de clasă pentru fereastra principală în aplicațiile non-MDI. Structura de clasa de MDI copil windows diferă ușor structura pentru copil Ferestre în non-MDI cererilor după cum urmează:

Următorul exemplu arată cum Multipad evidențele sale cadru copil fereastra clase.

BOOL WINAPI InitializeApplication() {WNDCLASS wc; 
 
    / / Inregistreaza clasa fereastra cadru. 
 
    WC.style = 0; 
    WC.lpfnWndProc = MPFrameWndProc (WNDPROC); 
    WC.cbClsExtra = 0; 
    WC.cbWndExtra = 0; 
    WC.hInstance = hInst; 
    WC.hIcon = LoadIcon (hInst, IDMULTIPAD); 
    WC.hCursor = LoadCursor((HANDLE) NULL, IDC_ARROW); 
    WC.hbrBackground = (HBRUSH) (COLOR_APPWORKSPACE + 1); 
    WC.lpszMenuName = IDMULTIPAD; 
    WC.lpszClassName = szFrame; 
 
    if (!.RegisterClass (amp; wc)) return FALSE; 
 
    / / Inregistreaza clasa fereastra copil MDI. 
 
    WC.lpfnWndProc = MPMDIChildWndProc (WNDPROC); 
    WC.hIcon = LoadIcon (hInst, IDNOTE); 
    WC.lpszMenuName = NULL (LPCTSTR); 
    WC.cbWndExtra = CBWNDEXTRA; 
    WC.lpszClassName = szChild; 
 
    if (!.RegisterClass (& wc)) return FALSE; 
 
    întoarce TRUE; 
} 

 

Index