crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> системные цвета
a_goodgirl
  опции профиля:
сообщение 12.5.2012, 19:09
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 35
Регистрация: 4.6.2009
Пользователь №: 801

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте!
Нужно получить системные цвета (цвет фона заголовка, текста заголовка, рамки и т.д.).

Для Windows можно взять ::GetSysColor с константами типа COLOR_ACTIVEBORDER, COLOR_ACTIVECAPTION и так далее.
Для других платформ пытаюсь использовать qApp->palette().color с разными QPalette::ColorRole (например, QPalette::ButtonText - цвет текста в кнопке).

Но дело в том, что ColorRole гораздо меньше, чем констант в Windows !

например, для COLOR_ACTIVEBORDER, COLOR_ACTIVECAPTION, COLOR_GRAYTEXT и т.д. (у меня получилось 13 штук таких) никакого соответствия в ColorRole не находится..
Как бы это задать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 15.5.2012, 12:35
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Не факт что это возможно. В иксах заголовки и рамки окон рисект window manager. Их, разных, куча, они могут использовать темы, и тамы могут быть основаны не на цветах а на картинках. Поэтому и нет таких вещей как COLOR_ACTIVEBORDER или COLOR_ACTIVECAPTION.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.4.2024, 18:43