使用 tkinter 处理 GUI 应用程序时,能够在指定的时间间隔过后执行某些操作非常有用。这就是 after 方法发挥作用的地方。
tkinter 小部件的 after 方法注册一个警报回调,该回调在给定的时间延迟后执行。它的语法是:
widget.after(delay_ms, callback=None, *args)
在您的具体示例中,您希望每 5 秒在屏幕上出现一个随机字母。为此,您需要将回调函数作为第二个参数传递给 after 。此回调将包含生成并显示随机字母的代码。
以下是修改代码的方法:
import random import time from tkinter import * root = Tk() w = Label(root, text="GAME") w.pack() frame = Frame(root, width=300, height=300) frame.pack() L1 = Label(root, text="User Name") L1.pack(side=LEFT) E1 = Entry(root, bd=5) E1.pack(side=LEFT) tiles_letter = ['a', 'b', 'c', 'd', 'e'] def add_letter(): if not tiles_letter: return rand = random.choice(tiles_letter) tile_frame = Label(frame, text=rand) tile_frame.pack() root.after(500, add_letter) tiles_letter.remove(rand) root.after(0, add_letter) root.mainloop()
以上是如何使用 Tkinter 的'after”方法创建定时事件?的详细内容。更多信息请关注PHP中文网其他相关文章!