רישום הילד ומחלקות מסגרת חלון

יישום MDI אופייני עליך לרשום את שתי מחלקות חלון: אחד עבור החלון המסגרת שלו ואחד עבור חלונות צאצאים שלו. אם יישום תומך יותר מסוג אחד של המסמך (לדוגמה, גיליון אלקטרוני ותרשים), עליך לרשום מחלקת חלון עבור כל סוג.

מבנה מחלקה עבור מסגרת חלון דומה למבנה מחלקה עבור החלון הראשי ב- MDI יישומים. מבנה מחלקה עבור חלונות צאצא מסוג MDI שונה במקצת ממבנה עבור הילד לחלונות ביישומים MDI כדלקמן:

הדוגמה הבאה מציגה כיצד Multipad רושמת שלו מחלקות חלון מסגרת וילד.

InitializeApplication() BOOL WINAPI {WNDCLASS wc; 
 
    / / הרשמה מחלקת חלון של המסגרת. 
 
    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; 
 
    אם (!.RegisterClass (כח; wc)) להחזיר שקר; 
 
    / / לרשום את מחלקת חלון צאצא מסוג MDI. 
 
    wc.lpfnWndProc = MPMDIChildWndProc (WNDPROC); 
    wc.hIcon = LoadIcon (hInst, IDNOTE); 
    wc.lpszMenuName = NULL (LPCTSTR); 
    wc.cbWndExtra = CBWNDEXTRA; 
    wc.lpszClassName = szChild; 
 
    אם (!.RegisterClass (& wc)) להחזיר שקר; 
 
    החזרת TRUE; 
} 

 

Index