2013-08-26 4 views
4

Некоторые компоненты окрашивают свой цвет с помощью свойства Color, даже когда vcl используются стили. Поэтому при использовании темного стиля Metro (почти черного) и цвета компонентов установлено значение clWindow, цвет компонентов не соответствует стилю. Есть ли способ получить цвет фона форм при использовании vcl.style, чтобы свойство цвета компонента можно было установить так, чтобы он соответствовал цвету в стиле стиля?Как получить цвет фона форм с помощью VCL.Styles

Цвет можно получить, загрузив стиль в конструктор стилей, но я хотел бы получить значение цвета во время выполнения.

ответ

9

Вы можете использовать функцию GetSystemColor прохождения правильного цвета системы постоянного получить

, например, чтобы получить цвет фона использования TEdit компонента

TStyleManager.ActiveStyle.GetSystemColor(clWindow) 

и получить фон по умолчанию цвета в образуют попробовать

TStyleManager.ActiveStyle.GetSystemColor(clBtnFace) 
0

Также вы можете использовать:

StyleServices.GetStyleColor(scWindow)