Прочитать на английском

Поделиться через


WM_NCPAINT сообщение

Сообщение WM_NCPAINT отправляется в окно, когда его рамка должна быть закрашена.

Окно получает это сообщение через функцию WindowProc .

LRESULT CALLBACK WindowProc(
  HWND hwnd, 
  UINT  uMsg, 
  WPARAM wParam, 
  LPARAM lParam     
);

Параметры

wParam

Дескриптор области обновления окна. Область обновления обрезается в рамке окна.

lParam

Этот параметр не используется.

Возвращаемое значение

Приложение возвращает ноль, если обрабатывает это сообщение.

Комментарии

Функция DefWindowProc закрашивает рамку окна.

Приложение может перехватывать сообщение WM_NCPAINT и рисовать собственную настраиваемую рамку окна. Область обрезки для окна всегда прямоугольная, даже если изменяется форма рамки.

Значение wParam можно передать в GetDCEx , как показано в следующем примере.

case WM_NCPAINT:
{
    HDC hdc;
    hdc = GetDCEx(hwnd, (HRGN)wParam, DCX_WINDOW|DCX_INTERSECTRGN);
    // Paint into this DC 
    ReleaseDC(hwnd, hdc);
}

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Winuser.h (включая Windows.h)

См. также раздел

Общие сведения о рисовании и рисовании

Сообщения для рисования и рисования

DefWindowProc

GetWindowDC

WM_PAINT

GetDCEx