C++ QComboBox上的图标大小';s弹出列表
我正在尝试制作一个简单的C++ QComboBox上的图标大小';s弹出列表,c++,qt,qcombobox,qpixmap,qicon,C++,Qt,Qcombobox,Qpixmap,Qicon,我正在尝试制作一个简单的QComboBox,带有一些颜色选项。到目前为止,我找到的最简单的方法是为每个项目制作一个QPixmap,用颜色填充,并将其用作项目的图标: this->colorComboBox = new QComboBox; this->colorComboBox->setIconSize(QSize(100, 15)); QPixmap colorIcon(100, 15); this->colorList.push_back(QColor(255, 25
QComboBox
,带有一些颜色选项。到目前为止,我找到的最简单的方法是为每个项目制作一个QPixmap
,用颜色填充,并将其用作项目的图标:
this->colorComboBox = new QComboBox;
this->colorComboBox->setIconSize(QSize(100, 15));
QPixmap colorIcon(100, 15);
this->colorList.push_back(QColor(255, 255, 255, 255));
this->colorList.push_back(QColor(194, 169, 160, 255));
this->colorList.push_back(QColor(235, 206, 157, 255));
this->colorList.push_back(QColor(254, 121, 5, 255));
this->colorList.push_back(QColor(255, 195, 78, 255));
this->colorList.push_back(QColor(111, 203, 172, 255));
for(unsigned int i = 0; i < this->colorList.size(); ++i)
{
colorIcon.fill(this->colorList.at(i));
this->colorComboBox->addItem(colorIcon, QString(""));
}
将项目添加到组合框后,请尝试设置大小。它会为我显示
OK
:。我认为问题在于你的QS
。你可以发布你用于QComboBox
的QSS
代码吗?之后设置大小没有帮助。在问题中添加了QSS
代码。我想它不是完整的QSS,因为它不是弹出菜单的更改背景,请发布绝对完整的QSS代码。
QComboBox
{
border: 1px solid #101010;
background-color: #808080;
color: #d0d0d0;
border-radius: 4px;
selection-color: #f58113;
selection-background-color: #808080;
show-decoration-selected: 0;
}
QComboBox:on
{
padding-top: -10px;
padding-left: 4px;
}
QComboBox::drop-down
{
subcontrol-origin: padding;
subcontrol-position: top right;
width: 15px;
border-left-width: 0px;
border-left-color: #000000;
border-left-style: solid;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
}