Bonjour,
Je créer un programme dans lequel l'utilisateur peut choisir 2 valeurs grâce à des Scales et que si les valeurs entre les deux et < 5 , il modifie le curseur non bougé.
Je n'ai pas trouvé de moyen miracle et j'ai pas mal cherché avec mes connaissances mais pour l'instant je n'ai jamais eu l'effet voulu.
Voilà la partie du programme simplifiée au maximum
Mais je n'arrive pas à mettre d'argument pour désigner le curseur et ne pas faire un va et viens d'information entre les deux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #main fenetre_jeu = Tk() fenetre_jeu.title("Lesson sympa") fenetre_jeu.wm_state(newstate="zoomed") fenetre_jeu['bg'] = "light sky blue" math_info.page_init() def curseur_bouge(nb_curseur): if curseur_nb_chiffre2.get() - curseur_nb_chiffre.get() < 5: if nb_curseur == 1: curseur_nb_chiffre2.set(curseur_nb_chiffre.get()+5) elif nb_curseur == 2: curseur_nb_chiffre1.set(curseur_nb_chiffre2.get()-5) global curseur_nb_chiffre curseur_nb_chiffre = Scale(fenetre_jeu, orient='horizontal', from_= 1, to=10, resolution = 1, length=80, command = lambda: curseur_bouge(1)) curseur_nb_chiffre.set(1) curseur_nb_chiffre.grid(row = 8, column = 0, pady = 10) global curseur_nb_chiffre2 curseur_nb_chiffre2 = Scale(fenetre_jeu, orient='horizontal', from_= 10, to=20, resolution = 1, length=80, command = lambda: curseur_bouge(2)) curseur_nb_chiffre2.set(10) curseur_nb_chiffre2.grid(row = 9, column = 0, pady = 2)
Voici l'erreur
Si il y a une solution plus facile je veux bien parce que à force de chercher je me suis un peu embrouillé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Exception in Tkinter callback Traceback (most recent call last): File "C:\Users\steph\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 1921, in __call__ return self.func(*args) TypeError: Math.page_init.<locals>.<lambda>() takes 0 positional arguments but 1 was given
Je suis disponible pour toute précision
Merci d'avance
Partager