QComboBox avec autocomplétion qui tourne en boucle
bonjour,
je travaille actuellement sur une combobox editable qui affiche une liste de résultat a partir de ma base de donné.
ma fonction est appelé par un editTextChanged.
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| def cbxProprioChange(self, text):
#on vide la liste d'affichage
self.dwg.cbxProprio.clear()
#connexion a la DB
db = sqlite3.connect(os.path.join(os.path.dirname(__file__),'data.sqlite'))
cursor = db.cursor()
#on recherche les correspondances dans la colonne nom
cursor.execute("SELECT nom FROM proprietaire where nom like ?", ('%' + text + '%', ))
#on remplit la liste d'affichage
for row in cursor.fetchall():
self.dwg.cbxProprio.addItem(row[0])
print(row[0]) |
le probleme est que quand l'utilisateur tape une lettre, le premier résultat est affiché dans le champs de la comboBox, et non dans la liste.
cela a pour effet de changer le texte entrer, et donc de relancer ma fonction...
et au final de tout faire planter.
du coup, j'aimerais que les résultat ne s'affiche pas dans le champs de recherche, mais seulement dans la liste déroulante, mais je ne sais absolument pas comment faire cela...
des idées?