Tkinter - Saisies claviers
Anonyme
-
Jithel Messages postés 1049 Statut Membre -
Jithel Messages postés 1049 Statut Membre -
Bonjour,
Je commence à utiliser Tkinter et je voudrais faire des saisies claviers : Mon code :
Sauf que je vois pas où est l'erreur. Le programme n'affiche rien ...
Merci d'avance !
Je commence à utiliser Tkinter et je voudrais faire des saisies claviers : Mon code :
from tkinter import *
root = Tk()
def touche(lettre):
print(lettre)
def toucheevent():
root.bind("<KeyPress-a>", touche)
root.bind("<KeyPress-b>", touche)
while 1:
toucheevent()
end = int(input())
Sauf que je vois pas où est l'erreur. Le programme n'affiche rien ...
Merci d'avance !
2 réponses
-
Il y a plusieurs problèmes.
1. Lorsque tu utilises tkinter en faisantroot = Tk()
, tu dois aussi utiliserroot.mainloop()
pour afficher quelque chose
2. La boucle infinie n'est pas convenable. La méthodetoucheevent()
n'a pas besoin d'être appelée indéfiniment.
3. La variableend
ne sert à rien car tu ne l'exploite pas. Supprime làinput() #attendre une entree de l'utlisateur
4. La méthodetouche(lettre)
prend un paramètre qui n'est pas celui auquel tu t'attend. En effet, ce paramètre est en fait la référence vers un objet Events. Voir : http://effbot.org/tkinterbook/tkinter-events-and-bindings.htm -
Ok merci, mais du coup, c'est quoi la formule exacte pour avoir "a" quand on tape a sur le clavier ?