Сообщение WM_NCPAINT


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

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

Синтаксис

LRESULT CALLBACK WindowProc(
  HWND hwnd,       // дескриптор окна
  UINT uMsg,       // WM_NCPAINT
  WPARAM wParam,   // дескриптор обновляемого региона (HRGN)
  LPARAM lParam    // не используется
);

Параметры

wParam

Дескриптор региона обновления окна. Регион обновления обрезается по рамке окна. Когда wParam = 1, должна обновиться вся рамка окна.

lParam

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

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

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

Замечания

Функция DefWindowProc красит рамку окна.

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

Значение wParam может быть передано в функцию GetDCEx как в примере ниже.

case WM_NCPAINT:
{
    HDC hdc;
    hdc = GetDCEx(hwnd, (HRGN)wParam, DCX_WINDOW|DCX_INTERSECTRGN);
    // Рисуем в этом контексте устройства (DC)
    ReleaseDC(hwnd, hdc);
}

Смотри также

Обзор Окрашивание и рисование, Сообщения окрашивания и рисования, DefWindowProc, GetWindowDC, WM_PAINT, GetDCEx

Размещение и совместимость WM_NCPAINT

К Windows Vista Да
л Windows XP Да
и Windows 2000 Professional Да
е Windows NT Workstation Да версии 3.1 и выше
н Windows Me Да
т Windows 98 Да
  Windows 95 Да
С Windows Server 2008 Да
е Windows Server 2003 Да
р Windows 2000 Server Да
в Windows NT Server Да версии 3.1 и выше
е
р
Используемая библиотека -
Используемая DLL -
Заголовочный файл
- объявлено в Winuser.h
- включено в Windows.h
Unicode -
Замечания по платформе Не имеется

Назад в оглавление
На главную страницу
В оглавление справки

Hosted by uCoz