Asocierea unei proceduri fereastra cu o clasă de Ferestre

Ați asociat o procedură fereastra cu o clasă de Ferestre clasa pentru înregistrarea. Completați o structură WNDCLASS cu informații despre clasa și membru lpfnWndProc trebuie să specificați adresa procedura fereastra. Pentru a înregistra clasa, trece adresa WNDCLASS structura la funcția de RegisterClass . Odată ce clasa fereastra este înregistrat, procedura fereastra este automat asociate cu fiecare fereastră nouă creat cu această clasă.

Următorul exemplu arată cum să se asocieze procedura fereastra în exemplul anterior, cu o clasă de Ferestre.

int &APIENTRY WinMain (HINSTANCE hinstance, / / ocupa la curent instanță HINSTANCE hinstPrev, / / ocupa la anterioare instanță LPSTR lpCmdLine, / / adresa de linie de comandă string int nCmdShow) / / Arată-fereastra de tip {WNDCLASS wc; 
 
    / / Inregistreaza clasa fereastra principală. 
    WC.style = CS_HREDRAW | CS_VREDRAW; 
    WC.lpfnWndProc = MainWndProc (WNDPROC); 
    WC.cbClsExtra = 0; 
    WC.cbWndExtra = 0; 
    WC.hInstance = hinstance; 
    WC.hIcon = LoadIcon (NULL, IDI_APPLICATION); 
    WC.hCursor = LoadCursor (NULL, IDC_ARROW); 
    WC.hbrBackground = GetStockObject(WHITE_BRUSH); 
    WC.lpszMenuName = "MainMenu"; 
    WC.lpszClassName = "MainWindowClass"; 
 
    if (!.RegisterClass(amp;wc)) return FALSE; 
 
    / / / / Procesa alte mesaje. 
    // 
 
} 

 

Index