Python:Tkinter 仅在键盘中断后打开

标签 python user-interface random tkinter

需要一些有关修订计划的帮助。我在下面编写的代码仅在我使用键盘中断停止程序后才打开 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)

最佳答案

您应该调用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()

关于Python:Tkinter 仅在键盘中断后打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20811019/

相关文章:

python - 修复 Numpy 中的相位展开错误

python - 属性错误: 'str' object has no attribute 'pop'

python - 作为 newAPIHadoopRDD 加载的数据可以转换为 DataFrame 吗?

c++ - 体验过 Adob​​e 的 "Adam and Eve"C++ GUI 库?

model-view-controller - MATLAB 函数拒绝根据放置运行

python 正则表达式在列表中查找匹配项

java - 当使用随机种子时,SecureRandom 是否会减弱?

java - 如何用Java制作图像?

python - 生成没有上限的随机整数

ios - iPhone UI 小部件大小调整