WM_PALETTECHANGED сообщение

Сообщение WM_PALETTECHANGED отправляется во все окна верхнего уровня и перекрываются после того, как окно с фокусом клавиатуры реализует свою логическую палитру, тем самым изменяя системную палитру. Это сообщение позволяет окну, которое использует цветовую палитру, но не имеет фокуса клавиатуры для реализации своей логической палитры и обновления клиентской области.

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

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

Параметры

wParam

Дескриптор окна, вызвавшего изменение палитры системы.

lParam

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

Комментарии

Это сообщение должно быть отправлено во все окна верхнего уровня и перекрывающиеся окна, включая окна, которые изменили системную палитру. Если какие-либо дочерние окна используют цветовую палитру, это сообщение также должно быть передано им.

Чтобы избежать создания бесконечного цикла, окно, получающее это сообщение, не должно реализовывать свою палитру, если не определяет, что wParam не содержит собственный дескриптор окна.

Требования

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

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

Общие сведения о цветах

Цветные сообщения

WM_PALETTEISCHANGING

WM_QUERYNEWPALETTE