crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Как сделать так, чтобы стиль распространялся только на родителя?
Rocky
  опции профиля:
сообщение 19.2.2010, 22:22
Сообщение #1


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

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




Репутация:   7  


Всем привет! Подскажите пожалуйста, как можно ставить styleSheet только родителю? Вот у меня есть такое)
m_sPanelStyle = QString(
        "background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, "
        "stop: 0 rgba(224, 224, 224, 70), stop: 1 rgba(255, 255, 255, 150));"
        "border: 2px solid gray;"
        "border-radius: 15px;"
        "margin-top: 1ex;");

.....
m_pPanelWidget->setStyleSheet(m_sPanelStyle);

m_pPanelWidget - это QWidget. У него есть несколько дочерних QLabel. Штука в том, что при таком заднии эти QLabel-ы тоже становятся со стилем m_sPanelStyle. А как этого можно избежать? Я вот так пробовал, не помогает:
m_pLabel1->setStyleSheet("");


И так (по идее только шрифт им поменять):
m_pLabel1->setStyleSheet("font: 18pt \"" + m_sDigitalFont + "\";");

m_pLabel1 всегда имеет ту же форму что и его отец(
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 19.2.2010, 22:28
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

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




Репутация:   44  


Можно указать конкретные классы, для которых будет применяться этот стиль:
"QButton { ... }"
"QLabel { ... }"

Также можно указывать даже имена объектов для которых предназначен этот стиль:
"QButton#cancelButton { ... }"
"QLabel { ... }" // Стиль для всех QLabel
"QLabel#header { ... }" // Стиль для QLabel с именем header


Сообщение отредактировал BRE - 19.2.2010, 22:29
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 19.2.2010, 23:27
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(BRE @ 20.2.2010, 1:28) *
"QButton#cancelButton { ... }"
такой способ должен подойти, т.е.
QWidget#m_pPanelWidget {
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
stop: 0 rgba(224, 224, 224, 70), stop: 1 rgba(255, 255, 255, 150));
border: 2px solid gray;
border-radius: 15px;
margin-top: 1ex;}
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Rocky
  опции профиля:
сообщение 19.2.2010, 23:33
Сообщение #4


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

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




Репутация:   7  


опа, получилось )) Что-то я забыл про то что так можно ) Вроде пару дней назад всего читал про это) Спасибо!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 28.3.2024, 23:37