tkinter 中的按钮运动动画
Button motion animation in tkinter
我想移动一个按钮动画。例如,它从 x=0 和 y=0 开始,在 0.1 秒后 x=1 和 y=1 ... x=50 和 y=50.
我试过这个:
import tkinter
import time
b=tkinter.Button(text="Example")
for i in range(50):
i+=1
b.place(x=i, y=i)
time.sleep(0.1)
执行完所有放置命令后window打开。
不要 pause/sleep 你的 python 程序。正如@Mike-SMT 所指出的,它最终可能会冻结您的主循环。如果你想做动画,after
是正确的选择。
import tkinter as tk
root = tk.Tk()
b = tk.Button(root, text="Example")
def move(i):
if i<=50:
b.place(x=i, y=i)
b.after(100, lambda: move(i)) #after every 100ms
i = i+1
move(0) #Start animation instantly
root.mainloop()
我想移动一个按钮动画。例如,它从 x=0 和 y=0 开始,在 0.1 秒后 x=1 和 y=1 ... x=50 和 y=50.
我试过这个:
import tkinter
import time
b=tkinter.Button(text="Example")
for i in range(50):
i+=1
b.place(x=i, y=i)
time.sleep(0.1)
执行完所有放置命令后window打开。
不要 pause/sleep 你的 python 程序。正如@Mike-SMT 所指出的,它最终可能会冻结您的主循环。如果你想做动画,after
是正确的选择。
import tkinter as tk
root = tk.Tk()
b = tk.Button(root, text="Example")
def move(i):
if i<=50:
b.place(x=i, y=i)
b.after(100, lambda: move(i)) #after every 100ms
i = i+1
move(0) #Start animation instantly
root.mainloop()