WM_CTLCOLORDLG сообщение

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

#define WM_CTLCOLORDLG                  0x0136

Параметры

wParam

Дескриптор контекста устройства для диалогового окна.

lParam

Дескриптор диалогового окна.

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

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

Комментарии

По умолчанию функция DefWindowProc выбирает системные цвета по умолчанию для диалогового окна.

Система не уничтожает возвращенную кисть автоматически. Приложение несет ответственность за уничтожение кисти, когда она больше не нужна.

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

Обратите внимание, что сообщение WM_CTLCOLORDLG отправляется в само диалоговое окно; все остальные сообщения WM_CTLCOLOR* отправляются владельцу элемента управления.

Если диалоговое окно обрабатывает это сообщение, она должна привести нужное возвращаемое значение к INT_PTR и вернуть значение напрямую. Если процедура диалогового окна возвращает значение FALSE, выполняется обработка сообщений по умолчанию. Значение DWL_MSGRESULT , заданное функцией SetWindowLong , игнорируется.

Требования

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

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

Справочные материалы

DefWindowProc

SetWindowLong

Основные понятия

Диалоговые окна

Другие ресурсы

RealizePalette

SelectPalette