QComboBox 在 macOS 中显示高度
QComboBox display height in macOS
我有一个 QComboBox,我想同时显示图标和文本。因此,我需要将组合框的高度设置为至少图标的高度——我考虑的是 32px 左右,但这是灵活的。不幸的是,至少在 macOS 10.12 下(可以肯定的是,我在旧版本上也遇到过同样的问题),我似乎根本无法改变组合框的高度,结果是当前选择的项目溢出组合框显示。
我试过为 QComboBox 设置样式表以添加高度属性,以及在小部件本身上设置 minimumSize 高度 属性,但不幸的是,到目前为止唯一的效果是添加 space 围绕组合框 - 好像它更大,即使它不是。如何在 macOS 上更改组合框的高度?谢谢。
OS X 上的本机组合框不支持此 :( Qt 的 mac 样式可以支持它,使其看起来不那么本机,但可惜它不支持。你必须要么缩小您的图标,要么从头开始重新设计组合以近似想象中的放大本机组合的外观。
在 Windows 和 Linux 我个人用这个样式表设置组合框的高度,也许它适用于 macOS :
QComboBox QAbstractItemView::item{
min-height: 60px;
}
然后在代码中我更改了项目委托
ui->comboBox->setItemDelegate(new QStyledItemDelegate());
结果:
我有一个 QComboBox,我想同时显示图标和文本。因此,我需要将组合框的高度设置为至少图标的高度——我考虑的是 32px 左右,但这是灵活的。不幸的是,至少在 macOS 10.12 下(可以肯定的是,我在旧版本上也遇到过同样的问题),我似乎根本无法改变组合框的高度,结果是当前选择的项目溢出组合框显示。
我试过为 QComboBox 设置样式表以添加高度属性,以及在小部件本身上设置 minimumSize 高度 属性,但不幸的是,到目前为止唯一的效果是添加 space 围绕组合框 - 好像它更大,即使它不是。如何在 macOS 上更改组合框的高度?谢谢。
OS X 上的本机组合框不支持此 :( Qt 的 mac 样式可以支持它,使其看起来不那么本机,但可惜它不支持。你必须要么缩小您的图标,要么从头开始重新设计组合以近似想象中的放大本机组合的外观。
在 Windows 和 Linux 我个人用这个样式表设置组合框的高度,也许它适用于 macOS :
QComboBox QAbstractItemView::item{
min-height: 60px;
}
然后在代码中我更改了项目委托
ui->comboBox->setItemDelegate(new QStyledItemDelegate());
结果: