J'ai écrit un script Python qui génère une tâche, puis je continue de modifier le texte stocké en tant que variable chaîne. Cela fonctionne, et je peux imprimer la chaîne chaque fois qu'il est changé.Mise à jour de l'étiquette Tkinter à partir de la variable
Je peux obtenir l'étiquette pour afficher la chaîne pour la première fois, mais elle ne met jamais à jour.
Voici mon code:
from tkinter import *
outputText = 'Ready'
counter = int(0)
root = Tk()
root.maxsize(400, 400)
var = StringVar()
l = Label(root, textvariable=var, anchor=NW, justify=LEFT, wraplength=398)
l.pack()
var.set(outputText)
while True:
counter = counter + 1
outputText = result
outputText = result
outputText = result
if counter == 5:
break
root.mainloop()
L'étiquette indique Ready
, mais ne sera pas mise à jour pour changer cela aux chaînes comme ils sont générés plus tard. Après un peu de googling et de regarder les réponses sur ce site, je pensais que la solution pourrait être d'utiliser update_idletasks
. J'ai essayé de mettre cela après chaque fois que la variable a été changée, mais cela n'a pas aidé.
Copie possible de [Mise à jour du widget d'étiquette python/tkinter?] (Http://stackoverflow.com/questions/1918005/making-python-tkinter-label-widget-update) – Lafexlos