37

QComboBox を項目のテキスト値だけを知っている項目に設定することは可能ですか? for i in range(myCombobox.count())現在のインデックスを設定するために使用できるように、アイテムのインデックスを見つけるためだけにループを回避しようとしています。

4

1 に答える 1

74

はい、一致したアイテムのインデックスを返すQComboBox.findTextがあります (または-1、存在しない場合は )。デフォルトでは、検索は大文字と小文字を区別して正確に一致しますが、2 番目の引数としていくつかの一致フラグを渡すことで動作を微調整できます。たとえば、大文字と小文字を区別しない一致を行うには、次のようにします。

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

アイテムのデータによって一致する同等のfindDataメソッドもあります。

于 2014-04-01T23:21:13.640 に答える