如何在Tkinter中每10秒自动运行一个功能

时间:2019-06-25 10:04:37

标签: python tkinter

我有一个gui,它需要经常刷新其标签中的信息,并且我有一个函数可以这样做。我想知道如何每10秒自动调用一次该功能。

当前,我有一个刷新信息的按钮,但必须手动按下。

bRefreshSystem = tk.Button(text="System Refresh", command=refreshSystem)

当前我的解决方案可以工作,但不是最佳解决方案,所以我如何每隔10秒自动调用refreshSystem?

2 个答案:

答案 0 :(得分:1)

不需要线程,最简单的方法是使用root.after

def refreshSystem():
    do stuff
    root.after(10000, refreshSystem)   # the delay is in milliseconds

答案 1 :(得分:0)

您可以启动一个线程,每n秒运行一次函数。这样对您有用吗?

import threading

def do_something():
  print("Hello!")
  threading.Timer(5, do_something).start()

do_something()