Название: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: kambala от Февраль 11, 2012, 19:13 Здравствуйте. Как правильно выставить фоновый цвет у любого наследника QAbstractItemView? Если выставляю через
Код то скроллбар тоже меняет цвет и выглядит ненативно: (http://i1125.photobucket.com/albums/l592/kambala_decapitator/search_css.png) если же выставить фон непосредственно у элемента (хоть в модели, хоть через Q*WidgetItem), то результат тоже не самый красивый: (http://i1125.photobucket.com/albums/l592/kambala_decapitator/search_itemcolor.png) Это проявляется как при использовании Q*Widget, так и при связке model/view. Также пробовал выставлять стиль самому диалогу (результат как в варианте 1, но чернеет абсолютно всё, включая кнопки) и выставлять setAutoFillBackground(true) диалогу/QAbstractItemView - тоже не помогает. Например, в QTextEdit этого можно добиться через <body bgcolor = "black">, но QAbstractItemView же не может использовать HTML. Название: Re: фоновый цвет QAbstractItemView Отправлено: Kolobok от Февраль 11, 2012, 20:07 Через QPalette
Название: Re: фоновый цвет QAbstractItemView Отправлено: andrew.k от Февраль 11, 2012, 20:10 QTreeWidget {background-color: black;} или так QAbstractItemView {background-color: black;}
Название: Re: фоновый цвет QAbstractItemView Отправлено: Bepec от Февраль 11, 2012, 20:19 QAbstractScrollArea\n{background-color: rgb(255, 170, 0);}
СтайлШит в Qt позволяет использовать селекторы. Ставь этот стайлшит на весь основной виджет к примеру, или куда угодно :) Указываешь тип виджета (даже свой к примеру), далее в {} уже свойства. И он автоматом их применять будет. Более подробно в ассистанте. Название: Re: фоновый цвет QAbstractItemView Отправлено: kambala от Февраль 11, 2012, 20:47 спасибо! оба варианта работают. но я так понимаю, что через стили предпочтительнее, т.к.
Цитировать If you create a new widget we strongly recommend that you use the colors in the palette rather than hard-coding specific colors. Название: Re: фоновый цвет QAbstractItemView Отправлено: andrew.k от Февраль 11, 2012, 21:55 спасибо! оба варианта работают. но я так понимаю, что через стили предпочтительнее, т.к. Видимо имеются ввиду кастомные виджеты.Цитировать If you create a new widget we strongly recommend that you use the colors in the palette rather than hard-coding specific colors. А вообще разницы нет как хард-кодить) Если ты захардкодишь задание стиля, то это будет то же самое, что захардкодить конкретный цвет. Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: kambala от Февраль 19, 2012, 03:02 в продолжении темы - в Mac OS X никак не хочет исчезать голубой кусок слева при выделении строки (под виндой проблем нет), при простом наведении на строку такое не проявляется.
Код
Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: kambala от Февраль 21, 2012, 13:31 в общем, если установить QTreeWidget::branch { background-color: black; }, то фон становится чёрным, но и сам бранч-контрол исчезает, а дополнительная установка картинки не помогает.
Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: andrew.k от Февраль 21, 2012, 13:40 в общем, если установить QTreeWidget::branch { background-color: black; }, то фон становится чёрным, но и сам бранч-контрол исчезает, а дополнительная установка картинки не помогает. может QTreeWidget::branch { background-color: transparent; }?Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: kambala от Февраль 21, 2012, 13:50 пробовал - никакого эффекта
Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: mutineer от Февраль 21, 2012, 13:52 А если QTreeWidget::branch { background-color: rgba(1, 0, 0, 0.5); }
Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: kambala от Февраль 21, 2012, 14:05 под виндой то же самое что и при black (не видно контрола), вряд ли в мак ос будет что-то другое
кстати в вин7 тоже есть интересная штука: этот бранч-контрол на чёрном фоне (да и вроде как на любом другом кроме дефолтного белого) криво смотрится, но при наведении светится нормально. (красную рамку я в пэинте нарисовал чтоб было понятнее куда смотреть). в ХР вроде как нормально, хотя может только если бранч-контролом выступают +- Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: mutineer от Февраль 21, 2012, 14:09 под виндой то же самое что и при black (не видно контрола), вряд ли в мак ос будет что-то другое Вполне может быть другое поведение - отрисовка ж от стиля зависит, а они под разными осями разные. У меня был случай, когда у ListView не делался прозрачным фон. Оказалось что так происходит только на убунте (при QGtkStyle) Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: kambala от Февраль 21, 2012, 14:36 я там предыдущее сообщение отредактировал :)
Название: Re: [РЕШЕНО] фоновый цвет QAbstractItemView Отправлено: andrew.k от Февраль 21, 2012, 15:56 кстати в вин7 тоже есть интересная штука: этот бранч-контрол на чёрном фоне (да и вроде как на любом другом кроме дефолтного Ну так потому что он черная стрелка. Как же еще он должен смотреться на черном фоне?Рисуй свою стрелку белую. |