QComboBox {
border: 1px solid #bebebe;
padding: 1px 18px 1px 3px;
font: normal normal 16px "Microsoft YaHei";
color: #555555;
background: transparent;
}
QComboBox:editable{
background: transparent;
}
QComboBox:!editable, QComboBox::drop-down:editable{
background: transparent;
}
QComboBox:!editable:on, QComboBox::drop-down:editable:on{
background: transparent;
}
QComboBox:!on{
}
QComboBox:on{ /* the popup opens */
color: #555555;
border-color: #327cc0;
background: transparent;
}
QComboBox::drop-down{
subcontrol-origin: padding;
subcontrol-position: top right;
width: 20px;
border-left-width: 1px;
border-left-color: darkgray;
}
QComboBox::down-arrow {
image: url(:/common/combobox_arrow);
}
QComboBox::down-arrow:on {
image: url(:/common/combobox_arrow_up);
}
QComboBox QAbstractItemView {
outline: 0;
border: 1px solid #327cc0;
background-color: #F1F3F3;
font: normal normal 14px "Microsoft YaHei";
}
QComboBox QAbstractItemView::item {
height: 32px;
color: #555555;
background-color: transparent;
}
QComboBox QAbstractItemView::item:hover {
color: #FFFFFF;
background-color: #327cc0;
}
QComboBox QAbstractItemView::item:selected {
color: #FFFFFF;
background-color: #327cc0;
}
QComboBox QAbstractScrollArea QScrollBar:vertical {
background-color: #d0d2d4;
}
QComboBox QAbstractScrollArea QScrollBar::handle:vertical {
background: rgb(160,160,160);
}
QComboBox QAbstractScrollArea QScrollBar::handle:vertical:hover {
background: rgb(90, 91, 93);
}
使用需要注意的点
QCombox *box = new QComboBox();
// 只有调用了setView(new QListView()), qss才能生效, 这是Qt的一个bug
box->setView(new QListView());
效果
![效果.gif](/uploads/projects/longmaomao@qt/712e83d425b54e28e12a78cf7bd1798e.gif)