Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: ruzik от Февраль 12, 2011, 21:45



Название: Перекрытие стилей
Отправлено: ruzik от Февраль 12, 2011, 21:45
Здравствуйте столкнулся с такой вещью когда один стиль блокирует другой, ну например
this->setStyleSheet("QProgressBar { border: 2px solid grey; border-radius: 5px;  background-color: #05B8CC; width: 20px;}");
this->setStyleSheet("QProgressBar::chunk { background-color: #CD96CD; width: 10px; margin: 0.5px;}");
Попробуйте закоментить 1 строку, потом 2, результат разный, но почему ведь они должны накладываться друг на друга(насколько я понимаю), конечно можно все заталкать в одну строку, но это не удобно, так как, например VS ругается когда я разбиваю строку, то есть пишу так
this->setStyleSheet("QProgressBar { border: 2px solid grey; border-radius: 5px;  background-color: #05B8CC; width: 20px;}
      QProgressBar::chunk { background-color: #CD96CD; width: 10px; margin: 0.5px;}");
Вместо того что бы написать в одну строку


Название: Re: Перекрытие стилей
Отправлено: BRE от Февраль 12, 2011, 21:54
Код
C++ (Qt)
setStyleSheet( "QProgressBar { border: 2px solid grey; border-radius: 5px;  background-color: #05B8CC; width: 20px;} \
                      QProgressBar::chunk { background-color: #CD96CD; width: 10px; margin: 0.5px;}"
);
 
 
setStyleSheet( "QProgressBar { border: 2px solid grey; border-radius: 5px;  background-color: #05B8CC; width: 20px;} "
                      "QProgressBar::chunk { background-color: #CD96CD; width: 10px; margin: 0.5px;}" );
 

И да, к стилям это не имеет никакого отношения.  :)


Название: Re: Перекрытие стилей
Отправлено: kdm от Февраль 12, 2011, 22:10
Делай отдельный файл и грузи стайлшит из него (его наверное можно и внутрь как ресурс закомпилить).

setStyleSheet(in.readAll());


Название: Re: Перекрытие стилей
Отправлено: ruzik от Февраль 12, 2011, 22:45
А зачем если можно сделать файл с новым классом, который будет сам делать styleSheet+можно сделать функции и самому без гемороя управлять цветом, размером и тп