首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >定制QComboBox

定制QComboBox
EN

Stack Overflow用户
提问于 2018-06-29 17:08:59
回答 2查看 2.5K关注 0票数 0

我想定制QComboBox。我希望看到的行为是一个组合框,它是按钮(朝下箭头),当组合框被折叠时占据整个区域。我知道QComboBox是一个带有QListWidget (或其他小部件)的QPushButton。我想改变QPushButton以占据整个地区。我还想去掉显示当前选择的区域。任何提示都将不胜感激!

我想要的是:

我能够通过QComboBox::view()->setMinimumWidth()控制下拉列表的宽度。这样,我可以有一个更窄的组合框,但一个更广泛的下拉列表。那部分已经完成了。现在我需要有一个按钮在那里。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-29 20:58:51

设置QComboBox按钮(实际上是向下箭头)可以由样式完成,使用down-arrow样式,但是,由于需要选择的内容不可见,因此需要处理其他设置、组合框的宽度和drop-down可能与您的图像、示例样式完全匹配才能实现这一点:

代码语言:javascript
复制
QComboBox::down-arrow {
    image: url(arrow.png); /* Set combobox button */
}

QComboBox::drop-down {
    width: 20px;  /* set the width of the drop down */
}

QComboBox {
    border: 0px;
    max-width: 20px; /* width of whole box */
}
票数 1
EN

Stack Overflow用户

发布于 2018-06-29 21:00:54

好吧,所以通过样式表是很有可能的。我所做的是:

代码语言:javascript
复制
QComboBox::setStyleSheet(
QComboBox::down-arrow {
image: url(:/images/add_support_combo_box.png);
left: -50px;
top: -10px;
width: 500px;
height : 200px;}");

如果你看到“左”和“顶”有负值。这迫使向下箭头的图像向左和向上移动。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51106539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档