crossplatform.ru

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


  Ответ в Qcss. Изображения саб-контролов у виджетов.
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Andrewshkovskii Дата 11.8.2011, 8:53
  С палитрой беда вышла. Если меняешь палитру, то все чилды (например, QCalendarWidget у QDateTimeEdit) тоже её меняет, что не приемлимо. Есть workaround такой :
Положить за виджет QFrame и ему красить границы.
Только проблема с тем, что программно я не нашел как это сделать, т.е. сначала надо найти позицию виджета в лейауте (QGridLayout, QFormLayout, QVbox, QHBox..) но это, видимо, не возможно.
(хотя точнее сказать - нет простого метода это сделать, найти-то перебором всегда можно)
Andrewshkovskii Дата 10.8.2011, 8:37
 
Цитата(igor_bogomolov @ 9.8.2011, 19:33) *
Цитата(Andrewshkovskii @ 9.8.2011, 18:26) *
Если нет, то подскажите , пожалуйста, как быть в случае, что мне надо отобразить визуально то, что пользователь вводи не верную информацию в инпуты?
Просто изменяй в нужный момент палитру требуемого виджета (в твоем случае в качестве colorRole будет QPalette::Base)

Цитата(Andrewshkovskii @ 9.8.2011, 18:26) *
Плюс к тому-же, где можно посмотреть как выглядят whatsThis и statusTip виджетов?:)
Уточни, что конкретно ты хочешь?

Как мне тогда решить идеологический вопрос о том, как отображать инпуты, где введены не верные значения? Через палитру? Хорошо, сейчас погляжу:)
Я предполагал использовать Qcss для визуального отображения , и какое-то из значений statusTip, whatsThis, toolTip для указания, какие же значения в инпут должны попасть. Но я не смог найти как же визуально выглядят statusTip, toopTip показывается с большим оффсетом от виджета..
P.S.: к сожалению, приложения будет работать в основном под виндами.. но и там есть 2 разных стиля (стиль Xp и стиль Vista)
igor_bogomolov Дата 9.8.2011, 19:33
 
Цитата(Andrewshkovskii @ 9.8.2011, 18:26) *
как-то можно получить текущее изображения для сабконтролов темы ОС из кода??А точнее, как бы этот самый пиксмап да использовать в Qcss?
средствами qss твоя задача не решаема.

ОФФ:


Я много раз уже писал, что не нужно без надобности этот qss пользовать. Все чего добьетесь - это поломаете нативность отображения вашего приложения под разными платформами и даже разными стилями одной платформы.


Цитата(Andrewshkovskii @ 9.8.2011, 18:26) *
Если нет, то подскажите , пожалуйста, как быть в случае, что мне надо отобразить визуально то, что пользователь вводи не верную информацию в инпуты?
Просто изменяй в нужный момент палитру требуемого виджета (в твоем случае в качестве colorRole будет QPalette::Base)

Цитата(Andrewshkovskii @ 9.8.2011, 18:26) *
Плюс к тому-же, где можно посмотреть как выглядят whatsThis и statusTip виджетов?:)
Уточни, что конкретно ты хочешь?
Andrewshkovskii Дата 9.8.2011, 17:26
  как-то можно получить текущее изображения для сабконтролов темы ОС из кода??А точнее, как бы этот самый пиксмап да использовать в Qcss?Ведь эти изображения сабконтролов можно получить из QStyle::StandardPixmap?
Если нет, то подскажите , пожалуйста, как быть в случае, что мне надо отобразить визуально то, что пользователь вводи не верную информацию в инпуты?
Плюс к тому-же, где можно посмотреть как выглядят whatsThis и statusTip виджетов?:)
ilyabvt Дата 9.8.2011, 17:00
  http://www.forum.crossplatform.ru/index.php?showtopic=7278
Вот недавно уже была тема.
Litkevich Yuriy Дата 9.8.2011, 16:40
 
Цитата(Andrewshkovskii @ 9.8.2011, 13:34) *
Как это можно поправить?
Цитата
Замечание: В случае сложных виджетов, таких как QComboBox и QScrollBar, если одно свойство или субэлемент управления настраивается, то и все остальные свойства или субэлементы управления также должны настраиваться.
(из асистента)
Andrewshkovskii Дата 9.8.2011, 10:34
  Репост отсюда.
При изменении CSS у виджета, у когорого есть какие-то саб-контролы (QComboBox - down_arrow и т.д.) убирается CSS текущей темы от ОС.
Т.е. саб-контролы из XP превращаются в саб-контролы из Win'98:

(border : 1px solid red)
Как это можно поправить? т.е. оставить изображение саб-контролов от текущей темы ОС?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 19.4.2024, 2:51