Récupérer la valeur d'un Scale
Uston
-
denak -
denak -
Bonjour, je débute en codage Python et j'aurais besoin d'aide pour réaliser un programme à l'aide de Tkinter
Voici la partie du code où je suis bloqué :
from tkinter import *
def nouvellevaleur(x):
p=x
return(p)
fenetre = Tk()
scale2=Scale(fenetre,orient='horizontal',from_=1,to=1000,resolution=1,tickinterval=50,length=1000,label='p',command=nouvellevaleur)
p=scale2.get()
scale2.grid(row=2)
fenetre.mainloop()
Je cherche à récupérer dans la variable p la valeur du Scale, cependant, ce code laisse p=1 peu importe la position du Scale,
Merci pour votre aide
Voici la partie du code où je suis bloqué :
from tkinter import *
def nouvellevaleur(x):
p=x
return(p)
fenetre = Tk()
scale2=Scale(fenetre,orient='horizontal',from_=1,to=1000,resolution=1,tickinterval=50,length=1000,label='p',command=nouvellevaleur)
p=scale2.get()
scale2.grid(row=2)
fenetre.mainloop()
Je cherche à récupérer dans la variable p la valeur du Scale, cependant, ce code laisse p=1 peu importe la position du Scale,
Merci pour votre aide
A voir également:
- Récupérer la valeur d'un Scale
- Comment recuperer un message supprimé sur whatsapp - Guide
- Comment récupérer un compte facebook piraté - Guide
- Récupérer mon compte facebook désactivé - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
- Comment recuperer une video sur youtube - Guide
1 réponse
Il y a plusieurs façon de faire, si tu veux affecter une variable hors de ta fonction, il faut la déclarer en global dans ta fonction.
Maintenant, y a t-il une utilité à cette fonction sachant que tu peux récupérer la valeur courant du scale avec get() ? (bouton 2)
Généralement les callbacks passés à une commande tkinter servent à faire autre chose qu'à affecter une nouvelle valeur à une variable.
def nouvellevaleur(x):
global p
p = x
fenetre = Tk()
scale2 = Scale(
fenetre,
orient='horizontal',
from_=1,
to=1000,
#resolution=1,
tickinterval=50,
#increment=50,
length=1000,
label='p',
command=nouvellevaleur,
)
scale2.grid(row=2)
p = 50
scale2.set(p)
b1 = Button(
fenetre,
text='valeur p',
command=lambda : print(p),
)
b1.grid()
b2 = Button(
fenetre,
text='valeur scale2',
command=lambda : print(scale2.get()),
)
b2.grid()
fenetre.mainloop()
Maintenant, y a t-il une utilité à cette fonction sachant que tu peux récupérer la valeur courant du scale avec get() ? (bouton 2)
Généralement les callbacks passés à une commande tkinter servent à faire autre chose qu'à affecter une nouvelle valeur à une variable.