如何将事件绑定到 Tkinter Canvas 项目?
tkinterpythongui-programming
Tkinter 事件可以与小部件绑定,以对小部件执行一组操作。更具体地说,我们还可以使用 bind(<Button>,callback) 方法将事件处理程序绑定到 Canvas 项目。将事件与画布项绑定可使画布项动态化,并可通过事件处理程序进行自定义。
示例
#导入所需的库 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()
输出
运行上述代码将显示一个包含 Canvas 的窗口。
当我们按下 <Space>键,它将在画布窗口中生成随机形状。