tkinter et le temps.le sommeil

Je suis en train de supprimer du texte à l'intérieur d'une zone de texte après une attente de 5 secondes, mais au lieu de cela, le programme ne courir et ne le sommeil sur tout le reste. Aussi est-il un moyen pour moi de faire ma zone de texte sommeil donc, je peux utiliser un autre code que le texte est gelé?

from time import time, sleep
from Tkinter import *

def empty_textbox():
    textbox.insert(END, 'This is a test')
    sleep(5)
    textbox.delete("1.0", END)

root = Tk()

frame = Frame(root, width=300, height=100)
textbox = Text(frame)

frame.pack_propagate(0)
frame.pack()
textbox.pack()

empty_textbox()

root.mainloop()
  • Je n'ai pas beaucoup d'expérience avec TKinter, mais je suis sûr que vous devez soit utiliser une sorte de boucle d'événement ou un thread séparé.
  • certainement pas d'un fil, et il y a déjà un événement de la boucle en cours d'exécution. C'est trivialement résolu à l'aide de after qui place un événement sur la file d'attente pour être traitées à un certain moment dans l'avenir.
InformationsquelleAutor Crispy | 2012-05-01