Цвет управления сообщения

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

WM_CTLCOLORBTN
WM_CTLCOLORDLG
WM_CTLCOLOREDIT
WM_CTLCOLORLISTBOX
WM_CTLCOLORMSGBOX
WM_CTLCOLORSCROLLBAR
WM_CTLCOLORSTATIC

Элемент управления отправляет сообщение цвет управления процедуру диалогового окна как раз перед тем, как он рисует собственный фон. Сообщение позволяет процедуре для указания, что кистью для использования и для задания цвета фона и переднего плана. Процедура определяет объект brush, возвращая кисти ручку. Для задания цвета фона и переднего плана, процедура использует SetBkColor и SetTextColor функций с элемента управления отображения контекста устройства. Цвет управления сообщение передается процедуре в параметре wParam сообщения дескриптор контекста устройства отображения.

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

В любом случае когда процедуру диалогового окна не обрабатывает цвета управления сообщения, система использует кисть с окна цвет по умолчанию для закрашивания фона для всех элементов управления и windows за исключением полос прокрутки. Приложение может получить цвет окон по умолчанию путем передачи значения COLOR_WINDOW для GetSysColor функции. В то время как фон краской, цвет переднего плана для контекста устройства отображения имеет значение по умолчанию цвет текста (COLOR_WINDOWTEXT). Для полос прокрутки система использует объект brush, имеющие цвет панели прокрутки по умолчанию (COLOR_SCROLLBAR). В этом случае значение цвета фона и переднего плана для контекста устройства отображения белый и черный, соответственно.

Index