📅  最后修改于: 2023-12-03 15:03:56.721000             🧑  作者: Mango
在使用 PyQt5 中的 QComboBox 时,可以通过样式表来设置控件处于关闭状态时的边框颜色。
下面是一个示例程序,展示了如何设置 ComboBox 的样式表来达到想要的效果。
from PyQt5.QtWidgets import QApplication, QComboBox, QVBoxLayout, QWidget
app = QApplication([])
combo = QComboBox()
combo.setStyleSheet("""
QComboBox {
border: 2px solid gray;
border-radius: 8px;
padding: 1px 18px 1px 3px;
min-width: 6em;
font-size: 14px;
}
QComboBox::drop-down {
subcontrol-origin: padding;
subcontrol-position: top right;
width: 30px;
border-left-width: 1px;
border-left-color: gray;
border-left-style: solid;
border-top-right-radius: 8px;
border-bottom-right-radius: 8px;
}
QComboBox::down-arrow {
image: url(arrow.png);
}
QComboBox::down-arrow:on {
top: 1px;
left: 1px;
}
QComboBox::down-arrow:hover {
background-color: lightgray;
}
QComboBox::drop-down:hover {
background-color: lightgray;
}
""")
layout = QVBoxLayout()
layout.addWidget(combo)
widget = QWidget()
widget.setLayout(layout)
widget.show()
app.exec_()
在样式表中,可以看到一个 QComboBox::drop-down 选择器,它负责绘制 ComboBox 的下拉箭头部分,我们可以设置它的边框颜色来达到不同状态下的效果。
这篇文章介绍了如何使用样式表来设置 PyQt5 ComboBox 处于关闭状态时的边框颜色。我们可以通过自定义样式表来实现更酷炫的外观,增强用户体验。