PyQt:如何将Combobox设置为Item知道Item的文本(标题)

时间:2014-04-01 22:03:31

标签: python pyqt pyqt4 qcombobox

是否可以将Combobox设置为知道Item的文本值的项目。我试图避免遍历for i in range(myCombobox.count())只是为了找到一个Item的索引,这样它就可以用来设置一个组合框到该项的索引。

1 个答案:

答案 0 :(得分:34)

是的,有QComboBox.findText,它将返回匹配项的索引(如果没有,则返回-1)。默认情况下,搜索会进行精确的区分大小写匹配,但您可以通过传递一些match-flags作为第二个参数来调整行为。例如,要进行case- 不敏感匹配:

    index = combo.findText(text, QtCore.Qt.MatchFixedString)
    if index >= 0:
         combo.setCurrentIndex(index)

还有一个与项目数据匹配的等效findData方法。