сообщение WM_NCPAINT

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

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

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

Параметры

wParam

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

lParam

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

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

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

Remarks

Функция 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 (include Windows.h)

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

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

Рисование и рисование сообщений

DefWindowProc

GetWindowDC

WM_PAINT

GetDCEx