"Pour accéder à la sélection, utilisez la méthodecurselectionde la liste. Elle renvoie un tuple de chaînes de caractères, chacune étant la position de l'élément sélectionné.
Par exemple, siliste.curselection()renvoie('2',), c'est le troisième élément de la liste qui est sélectionné (Ciseauen l'occurrence)."
Le problème c'est que la méthode ne fonctionne pas une fois que j'ai choisi un élément dans la fenêtre, j'appelle la méthode et ça me met une erreur sans aucune exception :
liste.curselection()
Traceback (most recent call last):
File "(stdin)", line 1, in (module)
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\lib\tkinter\__i
nit__.py", line 2782, in curselection
return self._getints(self.tk.call(self._w, 'curselection')) or ()
_tkinter.TclError: invalid command name ".!listbox"
La méthode ne fonctionne plus uniquement après que j'ai ouvert la fenêtre, mais avant que celle ci ne soit ouverte elle fonctionne très bien, d'où peut venir le problème sachant que j'ai suivi à la lettre le cour, merci d'avance pour vos réponses
- Edité par BastienPortigo 21 septembre 2018 à 12:46:30
Merci pour l'explication, je comprends maintenant le message d'erreur, et ça fonctionne.
Par contre j'ai l'impression que la ligne est complexe, pourquoi un << >> avant et après ListboxSelect, et la méthode bind sert à exécuter du code quand on est à l'intérieur de la boucle mainloop() ?
Par contre j'ai l'impression que la ligne est complexe, pourquoi un << >> avant et après ListboxSelect, et la méthode bind sert à exécuter du code quand on est à l'intérieur de la boucle mainloop() ?
J'ai trouvé cela dans la documentation Tk, tkinter étant un binding de la bibliothèque Tk.
Par contre j'ai l'impression que la ligne est complexe, pourquoi un << >> avant et après ListboxSelect, et la méthode bind sert à exécuter du code quand on est à l'intérieur de la boucle mainloop() ?
J'ai trouvé cela dans la documentation Tk, tkinter étant un binding de la bibliothèque Tk.
Je me suis renseigné sur la ligne, il s'agît en fait d'un descripteur de séquence qui indique à python que lorsque je choisi une option dans la fenêtre il faut appeler la fonction test (qui est ici un gestionnaire d'événement)
La méthode curselection()
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Bonne journée...
Bonne journée...
Bonne journée...
Bonne journée...