为了账号安全,请及时绑定邮箱和手机立即绑定

tkinter和time.sleep

tkinter和time.sleep

jeck猫 2019-10-12 10:54:15
我试图在等待5秒钟后删除文本框内的文本,但是该程序无法运行,并且不会占用其他所有内容。还有一种方法可以让我的文本框进入睡眠状态,以便在冻结文本时可以运行其他代码?from time import time, sleepfrom 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()
查看完整描述

1 回答

?
MYYA

TA贡献1868条经验 获得超4个赞

您确实应该使用Tkinter after方法而不是time.sleep(...)。


在另一个stackoverflow问题中有一个使用after方法的示例。


这是使用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()


查看完整回答
反对 回复 2019-10-12
  • 1 回答
  • 0 关注
  • 278 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信