Рисование в рабочей области


Вы используете функции BeginPaint и EndPaint, чтобы подготовить и завершить рисование в рабочей области. BeginPaint возвращает дескриптор контекста устройства изображения, используемый для того, чтобы рисовать в рабочей области; EndPaint завершает запрос окраски и рисования и освобождает контекст устройства.

В примере ниже, оконная процедура пишет сообщение "Привет, Windows!" в рабочей области окна. Чтобы гарантировать, что строка станет видимой, когда окно впервые создается,  функция WinMain вызывает функцию UpdateWindow немедленно после создания и показа окна. Это заставляет сообщение WM_PAINT немедленно отправиться в оконную процедуру.

LRESULT APIENTRY WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) 
{ 
    PAINTSTRUCT ps; 
    HDC hdc; 
 
    switch (message) 
    { 
        case WM_PAINT: 
            hdc = BeginPaint(hwnd, &ps); 
            TextOut(hdc, 0, 0, "Hello, Windows!", 15); 
            EndPaint(hwnd, &ps); 
            return 0L; 

        // Обработка других сообщений.  
    } 
} 
 
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) 
{ 
    HWND hwnd; 
 
    hwnd = CreateWindowEx( 
        // параметры 
        ); 
 
    ShowWindow(hwnd, SW_SHOW); 
    UpdateWindow(hwnd); 
 
    return msg.wParam; 
} 

 

Назад в оглавление
На главную страницу
Переведено 18.01.2011 14:34 ©Copyright V. Sokovikov
Hosted by uCoz