Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: BaltikS от Декабрь 11, 2009, 20:46



Название: Проблема c StyleSheet и ComboBox
Отправлено: BaltikS от Декабрь 11, 2009, 20:46
Проблема в следующем:
Использую qss в котором
Код
CSS
QLabel, QAbstractButton, QLineEdit, QTextEdit, QComboBox, QComboBox QAbstractItemView, QSpinBox, QDateTimeEdit, QDateEdit, QTimeEdit, QGroupBox
{
font-size: 14pt;
}
 
QLineEdit, QComboBox, QTextEdit, QSpinBox, QDateTimeEdit, QDateEdit, QComboBox QAbstractItemView {
   border-width: 1px;
   padding: 1px;
   border-style: solid;
   border-color: rgb(0,170,255);
   border-radius: 5px;
}
 

QComboBox помещён на виджет в лэйауте, а виджет растянут во весь экран, и в итоге такая ботва см.рис.1 ниже
Но если поместить его же на QDialog в лэйаут, то всё сразу же приходит в норму см.рис.2
В чём может проблема? И как её побороть...

Используется Qt 4.5.2 и MSVS 2005. Спасибо за ответы.



Название: Re: Проблема c StyleSheet и ComboBox
Отправлено: spectre71 от Декабрь 11, 2009, 21:30
Похоже на багу в QT.
Сделай компилябильный тест и выложи.


Название: Re: Проблема c StyleSheet и ComboBox
Отправлено: Павел_F. от Декабрь 11, 2009, 22:10
Есть соображение что виджет от диалога отличается тем, что диалогом управляет оконный менеджер а виджетом нет. я бы в эту сторону думал. Хотя может и баг.


Название: Re: Проблема c StyleSheet и ComboBox
Отправлено: BaltikS от Декабрь 11, 2009, 23:22
Насчёт кода, мне честно говоря влом вырезать (уж больно много)... Суть в след. есть класс и его куча наследников, которые кладутся в новую вкладку QTabWidget. Пробую с нуля сделать вроде как всё работает.... В программе же - ни фига.... Но решилось всё добавлением строки comboBox->setView(new QListView());


Название: Re: Проблема c StyleSheet и ComboBox
Отправлено: spectre71 от Декабрь 12, 2009, 07:00
Насчёт кода, мне честно говоря влом вырезать (уж больно много)... Суть в след. есть класс и его куча наследников, которые кладутся в новую вкладку QTabWidget. Пробую с нуля сделать вроде как всё работает.... В программе же - ни фига.... Но решилось всё добавлением строки comboBox->setView(new QListView());

Тебе влом вырезать, а нам соответственно писать самим. Та что не понятно зачем создана тема. ;)
Для такого теста мнгого кода не надо.


Название: Re: Проблема c StyleSheet и ComboBox
Отправлено: BaltikS от Декабрь 12, 2009, 08:13
Я ж говорю, писал тестовый пример в котором всё нормуль... Так и не врубился что к чему... Почему в проекте криво, а в тестовом примере - нормально. Понимаю, что это логика программы где-то что топортит. Но мне не понятно, к5акая бы логика не была, как она могла повлиять на стандартный комбобокс - не понимаю... А спросил я к тому, может у кого была подобная проблема...


Название: Re: Проблема c StyleSheet и ComboBox
Отправлено: spectre71 от Декабрь 12, 2009, 08:22
Я ж говорю, писал тестовый пример в котором всё нормуль... Так и не врубился что к чему... Почему в проекте криво, а в тестовом примере - нормально. Понимаю, что это логика программы где-то что топортит. Но мне не понятно, к5акая бы логика не была, как она могла повлиять на стандартный комбобокс - не понимаю... А спросил я к тому, может у кого была подобная проблема...

Была - в некоторых случаях при смене стиля приложения.


Название: Re: Проблема c StyleSheet и ComboBox
Отправлено: break от Декабрь 16, 2009, 00:48
Цитировать
Но мне не понятно, к5акая бы логика не была, как она могла повлиять на стандартный комбобокс - не понимаю...
Может где то в парентах еще установлены styleSheet-ы и они изменяют например шрифт - ведь эта система стайл шитов поддерживает наследование...