c++ - 自定义 QComboBox
问题描述
我想定制QComboBox
. 我想看到的行为是一个组合框,它的按钮(向下箭头)在折叠时占据组合框的整个区域。我知道那QComboBox
是QPushButton
一个QListWidget
(或其他一些小部件)。我想改变它QPushButton
以占据整个区域。我还想摆脱显示当前选择的区域。任何提示将不胜感激!
这就是我想要的:
我可以通过控制下拉列表的宽度QComboBox::view()->setMinimumWidth()
。这样我可以有一个更窄的组合框,但一个更宽的下拉列表。那部分已经完成。现在我只需要在那里有一个按钮。
解决方案
设置QComboBox
按钮,实际上是向下箭头,可以通过样式来完成,使用down-arrow
样式,但是,由于您要求选择不可见,您需要注意其他设置,组合框的宽度和drop-down
应该可能完全匹配您的图像,示例样式来实现这一点:
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 */
}
推荐阅读
- wordpress - 我忘记了我的 wordpress 网站管理仪表板网址
- amazon-web-services - 如何在 SNS 以外的其他地方发送 AWS 数据管道故障消息?
- sql-server - 不使用游标填充表的 ID 列
- python-3.x - python性能提升
- qt - Qt3D“qt.glx:qglx_findConfig:找不到匹配的FBConfig”警告
- c# - 列表中选择器中的项目 - Xamarin Code behind
- python-3.x - 使用 Redis 作为 Celery 结果后端和消息代理 - 任务到期(对于存储在 redis 中的密钥)
- ios - 即使满足条件也不会出现警报控制器(值为空)
- reporting-services - SSRS 表中列中特定十进制值的计数
- tfs - TFS 将变量与字符串组合