Python : Traduire la chaine
Résolu/Fermé
A voir également:
- Python : Traduire la chaine
- Citizen code python avis - Accueil - Outils
- Trouver la position d'un élément dans une liste python ✓ - Forum Python
- Python est introuvable. exúcutez sans argument pour procúder ó l ✓ - Forum Python
- Extraire données fichier texte python ✓ - Forum Python
1 réponse
Voici un listing qui fonctionne....
Tu as besoin d'une variable pour récupérer le contenu de ton objet Entry...
Tkinter met à ta disposition des objets spéciaux pour effectuer ce travail.
Il existe un objet IntVar() capable de retenir un contenu sous forme de nombre (entier et autres...) et un objet StringVar() capable de retenir des chaînes de caractères.
Tu accèdes à leur contenu à l'aide de la méthode get() et tu peux modifer leur contenu à l'aide de la méthode set().
Dans ton cas, tu dois instancier une variableTkinter et puis l'associer avec ton Entry...
Si tu as d'autres questions... je reste à ton service... ;-)
Tu as besoin d'une variable pour récupérer le contenu de ton objet Entry...
Tkinter met à ta disposition des objets spéciaux pour effectuer ce travail.
Il existe un objet IntVar() capable de retenir un contenu sous forme de nombre (entier et autres...) et un objet StringVar() capable de retenir des chaînes de caractères.
Tu accèdes à leur contenu à l'aide de la méthode get() et tu peux modifer leur contenu à l'aide de la méthode set().
Dans ton cas, tu dois instancier une variableTkinter et puis l'associer avec ton Entry...
Si tu as d'autres questions... je reste à ton service... ;-)
from Tkinter import * from math import * #Définition def calculer(event): txt2.configure(text = "Résultat =" + str(blabla.get() * 4 )) #-------------------------Programme Principal-----------------------# fen1 = Tk() fen1.title = "Convertion des moles" #Listing des objets txt1 = Label(fen1, text = 'Entrez une valeur :') txt2 = Label(fen1) blabla = IntVar() entr1 = Entry(fen1, textvariable=blabla) button1 = Button(fen1, text='Quitter', command =fen1.quit) #Mise en place txt1.grid(row=0, column =1) entr1.grid(row =0, column =2) entr1.bind("<Return>",calculer) txt2.grid(row=2, column =1) button1.grid(row=2, column =2) fen1.mainloop()
19 avril 2005 à 15:29
Or l'entrée est un nombre, et je n'ai pas envie kil m'affiche 4444 au lieau de 12.
J'ai trouvé la solution :
txt2.configure(text = "Résultat =" + str(int(entr1.get()))) et voilà !
Pas besoin de déclarer de variables !
Surtout pas de textvariable ki alourdit le code (surtout que la variable, on l'entre dans la fenetre et non dans la source ! )
Voilà ! Bref jte remercie comme même (au fait je n'ai pas vraiment uitilisé int() mais float() car je devais traduire des opération de type 12e+22 13e-2 etc...)
Tiens je te donne le code, il pourra te servir ! (qui sait ?) :
19 avril 2005 à 17:07
En effet, autant pour moi... mais IntVar() doit être remplacé par DoubleVar() pour que tu puisses utiliser des nombres à virgules flottantes.
Mon code fonctionne très bien...
Mais je peux remarquer que le tien fonctionne aussi... :-D
A chacun son truc... :-p
19 avril 2005 à 18:02