首页 > 解决方案 > 启动时在 QcomboBox 中显示特定项目

问题描述

我有一个QcomboBox里面有一些物品。当 Widget 启动并显示QcomboBox. 如何通过启动QcomboBox强制显示列表中的第三项?( Index(2))

在此处输入图像描述

from PyQt5 import QtWidgets, QtGui

class combo(QtWidgets.QWidget):
    def __init__(self, parent = None):
        super(combo, self).__init__(parent)

        layout = QtWidgets.QHBoxLayout(self)

        self.cb = QtWidgets.QComboBox()
        self.cb.addItems(["1", "2", "3","4"])
        layout.addWidget(self.cb)

if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    ex = combo()
    ex.show()
    sys.exit(app.exec_())

标签: python-3.xpyqtpyqt5qcombobox

解决方案


可以使用 setCurrentIndex() 设置当前项目。

from PyQt5 import QtWidgets, QtGui

class combo(QtWidgets.QWidget):
    def __init__(self, parent = None):
        super(combo, self).__init__(parent)

        layout = QtWidgets.QHBoxLayout(self)

        self.cb = QtWidgets.QComboBox()
        self.cb.addItems(["1", "2", "3","4"])
        self.cb.setCurrentIndex(2)              # <---
        layout.addWidget(self.cb)

if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    ex = combo()
    ex.show()
    sys.exit(app.exec_())

在此处输入图像描述


推荐阅读