Est-il possible de définir Combobox sur un élément en connaissant la valeur textuelle d'un élément. J'essaie d'éviter de parcourir for i in range(myCombobox.count())
juste pour trouver l'index d'un élément afin qu'il puisse être utilisé pour définir une zone de liste déroulante à l'index de cet élément.
Oui, il y a QComboBox.findText , qui renverra l'index de l'élément correspondant (ou -1, s'il n'y en a pas). Par défaut, la recherche effectue une correspondance exacte et sensible à la casse, mais vous pouvez modifier le comportement en passant --- match-flags comme deuxième argument. Par exemple, pour faire une correspondance de casse - insensible :
index = combo.findText(text, QtCore.Qt.MatchFixedString)
if index >= 0:
combo.setCurrentIndex(index)
Il existe également une méthode findData équivalente qui correspond aux données de l'élément.