我想将项目添加到comboBox对象,但是当前项目将更改为新添加的项目。
示例:
#comboBox have initial item "initial item"
comboBox.addItem("new added item1")
comboBox.addItem("new added item2")
现在上面的示例会将当前项目更改为"new added item2"
。添加新项目时,是否可以将当前文本保留为"initial item"
?
您可以使用insertItem()
方法并指定项目的位置:
import sys
from PyQt5.QtWidgets import QDialog, QApplication, QComboBox, QGridLayout
class MainWindow(QDialog):
def __init__(self):
super().__init__()
comboBox = QComboBox()
comboBox.addItem('first item')
comboBox.insertItem(1, 'second item')
lay = QGridLayout(self)
lay.addWidget(comboBox)
self.setLayout(lay)
if __name__ == '__main__':
app = QApplication(sys.argv)
GUI = MainWindow()
GUI.show()
sys.exit(app.exec_())
如果您想一次添加多个项目,只需使用:
comboBox.addItems(['first item', 'second item'])
查看QComboBox documentation了解更多信息。>>