Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Figaro от Апрель 24, 2013, 05:39



Название: QComboBox и qss
Отправлено: Figaro от Апрель 24, 2013, 05:39
Здр всем.

Столкнулся с проблемой, когда устанавливаю стиль - все визуальные компоненты отрисовываются нормально, кроме выпадающей части QComboBox (размеры Items кривые). QComboBox::AdjustToContents естественно выставляю, в форумах видел похожий вопрос, но :( Кто и что может посоветовать?

P. S. Qt 4.8.3 (Виндоза)


Название: Re: QComboBox и qss
Отправлено: lighting от Апрель 24, 2013, 10:35
Выложи свой qss. Я правил вид Комбобокса через qss и никаких проблем не было.


Название: Re: QComboBox и qss
Отправлено: Figaro от Апрель 25, 2013, 05:14
Типа такого (в первой строчке %font% заменяется на реальный шрифт):

Код
CSS
* {
 %font%
 background-image: url(:/images/default.png);
 color: white;
}
 
QPushButton {
   color: white;
   background: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 rgb(50, 50, 50), stop:1 rgb(128, 128, 128));
}
 
QPushButton:hover {
   background: darkgray;
}
 
QPushButton:pressed, QPushButton:on {
   background: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 rgb(50, 50, 50), stop:1 black);
}
 
QListView::item:hover,
QTreeView::item:hover,
QMenu::item:selected,
QScrollBar,
QProgressBar {
   background-color: rgb(128, 128, 128, 75%);
}
 
QTreeView,
QListView,
QTableWidget,
QLineEdit,
QTextBrowser,
QPlainTextEdit,
QSpinBox,
QDoubleSpinBox,
QComboBox,
QMenu {
   selection-color: black;
   selection-background-color: lightgrey;
   background: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 black, stop: 1 rgb(128, 128, 128));
   border: 1px solid gray;
   padding: 2px;
   border-radius: 3px;
}
 
QSplitter::handle:horizontal {
   background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 rgb(100, 100, 100), stop:1 rgb(20, 20, 20));
   border: 1px solid rgb(50, 50, 50);
   width: 2px;
   height: 2px;
   border-radius: 1px;
}
 
QSplitter::handle:vertical {
   background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 rgb(100, 100, 100), stop:1 rgb(20, 20, 20));
}


Название: Re: QComboBox и qss
Отправлено: lighting от Апрель 25, 2013, 10:26
уверен что проблемы именно в stylesheet? я попробовал твой qss применить, все вроде нормально рисуется.


Название: Re: QComboBox и qss
Отправлено: Figaro от Апрель 26, 2013, 07:53
Дело в том что фонт меняется на лету.... на большинстве если isSmoothable (на память не помню) все нормально, но иногда при переходе, например, с размера 72 на 6... появляются промежутки между айтемами... логику  не понял