没有QComboBox::setIconSize()
时间: 2024-01-11 12:02:21 浏览: 123
带图标的ComboBox
3星 · 编辑精心推荐
如果您使用的Qt版本比较旧,可能会没有QComboBox::setIconSize()函数。在这种情况下,您可以通过自定义QComboBox的样式表来实现设置图标大小。
可以使用样式表中的QComboBox::down-arrow和QComboBox::down-arrow:open伪类选择器来设置下拉箭头的大小,使用QListView::item中的QIcon选择器来设置下拉框中选项的图标大小。
下面是一个示例:
```cpp
QComboBox comboBox;
// 设置下拉箭头大小
QString styleSheet = "QComboBox::down-arrow {"
" width: 20px;"
" height: 20px;"
"}"
"QComboBox::down-arrow:open {"
" width: 20px;"
" height: 20px;"
"}";
// 设置下拉框中选项图标大小
styleSheet += "QListView::item {"
" height: 40px;"
"}"
"QListView::item > * {"
" height: 40px;"
" width: 40px;"
"}"
"QListView::item:selected {"
" background-color: #c0c0c0;"
"}";
comboBox.setStyleSheet(styleSheet); // 应用样式表
```
以上代码创建了一个QComboBox对象,并通过样式表设置了下拉箭头的大小为20x20,下拉框中选项图标的大小为40x40。在设置样式表时,可以根据需要改变大小值。
阅读全文