crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Наследование стилей, Как избавиться от наследования стилей?
dimon1980ddd
  опции профиля:
сообщение 4.1.2010, 13:56
Сообщение #1


Студент
*

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

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




Репутация:   0  


С помощью styleSheet изменяем например цвет панели, закругляем края в итоге тоже самое происходит с дочерними элементами... Как от этого избавиться (не хотелось бы выставлять стиль по умолчанию для всех дочерних компонентов)?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
QCasper
  опции профиля:
сообщение 4.1.2010, 14:53
Сообщение #2


Студент
*

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

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




Репутация:   1  


Например задать стиль по имени объекта.

В коде задаёте имя объекта:

QToolBar *db = new QToolBar(this);
db->setObjectName("DocBar");


А в стиле можно использовать его следующим образом:

QToolBar#DocBar { /* your style definition */ };
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
dimon1980ddd
  опции профиля:
сообщение 4.1.2010, 17:07
Сообщение #3


Студент
*

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

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




Репутация:   0  


Спасибо за ответ!
Действительно помогло....
Т.е. получается что мне нужно писать
app.setStyleSheet("QFrame#myName {background-color: rgb(0, 0, 255);}");
Вместо:
myName->setStyleSheet("background-color: rgb(0, 0, 255);"); ???
На мой взгляд не очень удобно... Имя поменялось - а ошибки компиляции нет...
Просто в QT Designer'e стили достаточно удобно выставлять - а так прийдется их в собсвенном коде указывать... Может есть еще способ?


Все разобрался просто еще можно и так:
    myName->setStyleSheet("QFrame {background-color: rgb(0, 0, 255);}");


Следовательно будет работать и в Qt Disegner'e

Еще раз спасибо за помощь - проблема решена...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 9.8.2020, 20:30