需要一些修订程序的帮助。我在下面编写的代码只在用键盘中断停止程序后打开tkinter框 - 任何帮助都将不胜感激!
#Imports moduals used
from tkinter import *
import time
import random
#Sets GUI
gui = Tk()
gui.geometry("500x500")
gui.maxsize(width=500, height=500)
gui.minsize(width=500, height=500)
#Sets list of facts
facts = ['fact one', 'fact two', 'fact three', 'fact four', 'fact five']
#Defines random fact generator
def fun1():
r = random.randrange(len(facts))
lbl = Label(gui,text=facts[r]).pack()
#Checks time (5s) before each new fact displayed
while 1:
fun1()
time.sleep(5)
答案 0 :(得分:3)
你应该调用mainloop
函数来启动Tkinter事件循环。
如果您需要定期运行代码,请使用after
代替无限while
循环。
...
def fun1():
r = random.randrange(len(facts))
lbl = Label(gui,text=facts[r]).pack()
gui.after(5000, fun1)
gui.after(5000, fun1) # <--- Call `fun1` function after 5000 ms.
mainloop()