如何将事件绑定到Tkinter Canvas项目?
可以使用 bind( 方法将Tkinter事件与控件绑定,以执行一组操作。更具体地说,我们也可以通过将事件处理程序绑定到画布项目来绑定事件,并使画布项目变得动态,可以由事件处理程序自定义。
例子
#导入所需库
from tkinter import *
import random
#创建Tkinter帧实例
win = Tk()
#设置窗口的几何图形
win.geometry("700x350")
#创建画布
canvas=Canvas(win,width=700,height=350,bg='white')
def draw_shapes(e):
canvas.delete(ALL)
canvas.create_oval(random.randint(5,300),random.randint(1,300),25,25,fill='O rangeRed2')
canvas.pack()
#将空格键绑定到一个函数
win.bind("<space>", draw_shapes)
win.mainloop()
结果
运行上面的代码将显示一个包含画布的窗口。
当我们按下<空格>键时,它将在画布窗口中生成随机形状。