对于QComboBox控件,经常需要设置其样式,有时候还需要禁用其中某些选项,使其不能被选中
这里做点记录,方便自己查看,也希望给需要的人一点参考
CPP示例
代码需要设置如下,功能见注释:
//禁用item0
ui->comboBox->setItemData(0, 0, Qt::UserRole - 1);
//取消禁用item2
ui->comboBox->setItemData(2, -1, Qt::UserRole - 1);
//设置代理,以应用QSS
ui->comboBox->setView(new QListView);
QSS示例
QComboBox{
font-size:25px;
min-height:50px;
max-height:50px;
min-width:200px;
max-width:200px;
border:1px solid red;
background-color:skyblue;
}
QListView, QComboBox QAbstractItemView{
font-size:20px;
background-color:skyblue;
}
QListView::item, QComboBox QAbstractItemView::item{
min-height:40px;
max-height:40px;
}
QListView::item::selected{
font-size:12px;
background-color:red;
}
QComboBox QAbstractItemView::item::!enabled
{
color:lightgray;
}
运行效果

本文介绍如何使用Qt的QComboBox控件设置样式和禁用特定选项。通过CPP示例展示如何禁用和启用项,以及如何设置QSS样式来改变组合框的外观。包括字体大小、高度、宽度、边框颜色和背景色。
674

被折叠的 条评论
为什么被折叠?



