Russian Qt Forum
Июля 06, 2025, 13:54 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Отличаются стили в дизайнере и в скомпилированной программе  (Прочитано 2712 раз)
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« : Июня 03, 2010, 16:21 »

Сделал в дизайнере виджет стилизированный с помощью таблиц стилей при предпросмотре выглядит так:
(Вложение: well_designer.png)
однако скомпилированная программа выглядит так:
(Вложение: well_runtime.png)
Т.е. окантовка отсутствует.

Стиль наложен на экземпляр класса QFrame. Выглядит так:
Код
CSS
.QFrame {
border-color: rgb(126, 126, 126);
border-width: 2px;
border-style: solid;
border-radius: 4px;
}
точка в начале предотвращает наложение стиля на наследников класса QFrame (т.е. QLable)

Qt 4.4.3
В чём может быть дело?

П.С.
Пробовал собирать  4.5 ... 4.7. всё тоже - окантовки нет.
« Последнее редактирование: Июня 03, 2010, 16:24 от lit-uriy » Записан

Юра.
kdm
Гость
« Ответ #1 : Июня 04, 2010, 10:51 »

Столкнулся с той же проблеммой. В чем дело, так и не разобрался. Сделал свой виждет TClip наследованный от QFrame, в котором разместил все элементы управления, применил стили "TClip { border-color..." (стили как раз применяются только элементу TClip) и добавил его в layout главного виджета, получилось так... (большая синяя штука со светлосиней рамкой)
(что про точку упомянул спасибо, а то я кое-где мучался, не знал, как сделать)
« Последнее редактирование: Июня 04, 2010, 10:59 от kdm » Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #2 : Июня 04, 2010, 16:43 »

сделал по другому, наложил стиль на виджет в дизайнере:
Код
CSS
MyClass {
border-color: rgb(126, 126, 126);
border-width: 2px;
border-style: solid;
border-radius: 4px;
}
 
где MyClass - objectName в дизайнере. А в коде соответствует имени класса моего виджета (используется множественное наследование от QFrame  и ui).
Теперь в дизайнере нет окантовки, а во время выполнения программы есть.

Т.е. стиль всё таки применяется к самому виджету, почему же первый вариант не работает во время выполнения. Вообще ничего не понятно.
Записан

Юра.
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.044 секунд. Запросов: 23.