【发布时间】:2014-09-20 17:28:50
【问题描述】:
完成这项工作的最佳方法是什么? showinfo 处挂起的脚本:
from tkinter import *
from tkinter.messagebox import *
from threading import Timer
def timerDone():
showinfo('Alert','Alert')
window = Tk()
mainTimer = Timer(3, timerDone)
mainTimer.start()
window.mainloop()
我使用 Python 3。有没有办法让它在没有队列或额外导入的情况下工作?
我不使用“after”方法,因为计时器可以停止或更改 - 我有很多计时器可以动态更改间隔,这非常不方便。
【问题讨论】:
-
是的,但我需要计时器才能在之前停止或更改。
-
您可以使用after_cancel 方法取消由
after启动的内容。 Here's one answer 展示了如何做到这一点。 -
谢谢。无论如何,没有
after等有没有办法做到这一点?我有很多具有动态可变间隔的计时器,这非常不方便。
标签: python multithreading timer tkinter