自定义 QComboBox
Customizing 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 */
}
好的,所以通过样式表是很有可能的。这是我所做的:
QComboBox::setStyleSheet(
QComboBox::down-arrow {
image: url(:/images/add_support_combo_box.png);
left: -50px;
top: -10px;
width: 500px;
height : 200px;}");
如果您看到 "left" 和 "top" 有负值。这会强制向下箭头的图像向左和向上移动。
我想自定义 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 */
}
好的,所以通过样式表是很有可能的。这是我所做的:
QComboBox::setStyleSheet(
QComboBox::down-arrow {
image: url(:/images/add_support_combo_box.png);
left: -50px;
top: -10px;
width: 500px;
height : 200px;}");
如果您看到 "left" 和 "top" 有负值。这会强制向下箭头的图像向左和向上移动。