Python time.sleep
tkinter elapsedtime (1)
Deberías estar usando algo como Tkinter después del método en lugar de time.sleep(...)
.
Hay un ejemplo del uso del método after en esta otra pregunta de stackoverflow .
Aquí hay una versión modificada de su script que usa el método after:
from time import time, sleep
from Tkinter import *
def empty_textbox():
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()
textbox.insert(END, ''This is a test'')
textbox.after(5000, empty_textbox)
root.mainloop()
Estoy tratando de eliminar texto dentro de un cuadro de texto después de esperar 5 segundos, pero en su lugar el programa no se ejecutará y duerme sobre todo lo demás. También, ¿hay alguna forma de que haga que mi cuadro de texto duerma para poder ejecutar otro código mientras el texto está congelado?
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()