pyqt5 如何让qcomobox两个选项间隔大一点
时间: 2023-10-24 21:03:15 浏览: 157
PyQt QCombobox设置行高的方法
在PyQt5中,可以使用样式表(QSS)来设置QComboBox的下拉菜单项之间的间隔。要实现这一点,可以使用padding属性来调整每个选项的间隔大小。
首先,我们需要在代码中导入QSS模块:
```
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QApplication, QComboBox
```
然后,可以创建一个自定义的QComboBox类,重写它的showPopup()方法来设置QSS样式:
```
class MyComboBox(QComboBox):
def __init__(self, parent=None):
super(MyComboBox, self).__init__(parent)
def showPopup(self):
self.setStyleSheet("QAbstractItemView::item {padding-top: 5px; padding-bottom: 5px;}")
super(MyComboBox, self).showPopup()
```
在showPopup()方法中,我们使用setStyleSheet()方法来设置QSS样式。在这个例子中,我们将QAbstractItemView::item选择器用于下拉菜单的每个选项,并使用padding-top和padding-bottom属性来设置上下间隔为5px。
最后,可以在应用程序中使用自定义的QComboBox类:
```
app = QApplication([])
combo = MyComboBox()
combo.addItem("Option 1")
combo.addItem("Option 2")
combo.show()
app.exec_()
```
运行此代码,会看到QComboBox的两个选项之间有一个较大的间隔。可以根据需要调整padding属性的值来修改间隔大小。
阅读全文