Регистрация детей и рамка окна классов

Типичное приложение MDI необходимо зарегистрировать два класса окна: один для его фрейма окна и один для его дочерних окон. Если приложение поддерживает несколько типов документа (например, электронную таблицу и диаграмму), он должен зарегистрировать класс окна для каждого типа.

Структура классов для фрейма окна похож на структуру классов для главного окна в приложениях MDI. Структура классов для дочерних MDI-окон несколько отличается от структуры для дочерних окон в приложениях MDI следующим:

В следующем примере показано, как Multipad регистрирует его рама и ребенок окно классов.

BOOL WIN&API InitializeApplication() {WNDCLASS туалет; 
 
    / / Регистрация класс дочернего фрейма окна. 
 
    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 (amp; wc)) вернуть значение FALSE; 
 
    / / Регистрация класс дочернего окна интерфейса MDI. 
 
    WC.lpfnWndProc = MPMDIChildWndProc (WNDPROC); 
    WC.hIcon = LoadIcon (hInst, IDNOTE); 
    WC.lpszMenuName = NULL (LPCTSTR); 
    WC.cbWndExtra = CBWNDEXTRA; 
    WC.lpszClassName = szChild; 
 
    Если (!.RegisterClass (и санузел)) вернуть значение FALSE; 
 
    Возвращает значение TRUE; 
} 
 

Index