Registo de crianças e Classes de janela do quadro

Um aplicativo MDI típico deve registrar classes de janela do dois: um para sua janela do quadro e outro para suas janelas filho. Se um aplicativo oferecer suporte a mais de um tipo de documento (por exemplo, uma planilha e um gráfico), ele deve registrar um classe de janela para cada tipo de.

A estrutura de classe de janela do quadro é semelhante à estrutura de classe para a janela principal em aplicativos não-MDI. A estrutura de classe para as janelas filho MDI difere ligeiramente a estrutura para as janelas filho em aplicativos MDI não como segue:

O exemplo a seguir mostra como Multipad registra suas classes de janela do quadro e filho.

BOOL WINAPI InitializeApplication() {WNDCLASS wc; 
 
    / / Registrar a classe de janela do quadro. 
 
    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; 
 
    / / Registrar a classe de janela de filho MDI. 
 
    WC.lpfnWndProc = (WNDPROC) MPMDIChildWndProc; 
    WC.hIcon = LoadIcon (hInst, IDNOTE); 
    WC.lpszMenuName = (LPCTSTR) NULL; 
    WC.cbWndExtra = CBWNDEXTRA; 
    WC.lpszClassName = szChild; 
 
    if (!.RegisterClass (& wc)) retornam FALSE; 
 
    retornar TRUE; 
} 

 

Index