Bonjour, mon premier post dans un forum d'aide, merci d'être indulgents
le code en question en python 2.7.13 (un extrait le plus réduit possible de mon programme d'environ 3000 lignes) :
l'instruction textevar.set s'exécute correctement quand la procédure fenetreCalcul est appelée par la procédure fonc elle même appelée par fonc(), et on voit bien apparaitre "test" dans la zone d'affichage de la fenêtre.
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 # -*- coding: utf-8 -*- from Tkinter import * def fenetreCalcul(): fenetreTest = Tk() textevar=StringVar() espaceTexte = Entry(fenetreTest, textvariable=textevar) espaceTexte.pack() textevar.set("test") fenetreTest.mainloop() def fonc(): fenetreCalcul() fonc() main = Tk() Bout = Button(main, text ='Clic', command = fenetreCalcul) Bout.pack() main.mainloop()
Mais si l'appel est fait en utilisant la fenêtre main avec clic sur le widget Bout, ça fonctionne pareil sauf l'initialisation de textevar qui reste à "".... Tout se passe comme si la fonction .set n'opérait plus, et elle seule, lorsque l'on vine d'une autre fenêtre et pas du corps du programme.... Et là, je sèche lamentablement. J'ai essayé plein de choses, par exemple en passant par des globales, et bien sûr en fouillant sur le web, rien à faire. Quelqu'un aurait une idée ?
Merci d'avance à ceux qui voudront s'intéresser à mon petit souci.
Partager