Bonjour,

Je souhaite récupérer dans une variable la valeur selectionnée par un user dans une combobox.

Ma combobox est alimentée par une boucle exécutée dans une fonction, problème je ne peux pas utiliser la méthode bind dans la fonction car l'user n'a encore rien sélectionné, donc je suis un peu paumé.

morceau de ma fonction alimentant la combobox

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
def ping(event):
 
fenetre.tk.eval('package require Tix')
      varcombo = tix.StringVar()
      combomarque = tix.ComboBox(fenetre, editable=1, dropdown=1, variable=varcombo)
 
      combomarque.entry.config(state='readonly')  ## met la zone de texte en lecture seule
      combomarque.place(x=40, y=150)
      for x in range(len(contenu)):
         combomarque.insert(x, contenu[x])

mon code principal alors la c'est le grand flou je ne sais pas si je dois ajouter toute les lignes ci-dessous ou juste la ligne combomarque.bind...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
fenetre.tk.eval('package require Tix')
varcombo = tix.StringVar()
combomarque = tix.ComboBox(fenetre, editable=1, dropdown=1, variable=varcombo)
combomarque.entry.config(state='readonly')  ## met la zone de texte en lecture seule
combomarque.place(x=40, y=150)
combomarque.bind("<<ComboboxSelected>>",choix)
choix est une autre fonction devant imprimer la valeur selectionnée par le user dans un print mais rien ne se passe.... pas de code d'erreur pas de résultat nada idem avec Button-1 ou ButtonRelease. Même le print papa n'apparait pas c'est comme si l'action sur la combobox n'était pas prise en compte.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
def choix(event):#function called when '<<ComboboxSelected>>' event is triggered
    print (varcombo.get())#how to access to combobox selected item
    print ("papa")
Je suis sous Win 7 et python 3.6.3 et tout le reste fonctionne bien...