如何在 Tkinter 中将单击事件绑定到画布?


Canvas 组件无疑是 tkinter 中最强大的组件。它可以用来创建和开发从自定义组件到完整用户界面的所有内容。我们甚至可以绑定单击事件来处理画布及其对象。

示例

在本示例中,我们将在画布组件内添加一张图像,并将一个按钮对象绑定到画布上以删除图像。

为了绑定一个单击事件,我们可以使用tag_bind()方法,并使用delete(image object)删除图像。

#Import the required library
from tkinter import*
#Create an instance of tkinter frame
win= Tk()
#Set the geometry
win.geometry("750x280")
#Create an canvas object
canvas= Canvas(win, width= 1000, height= 750)
#Load an image inside the canvas
smiley = PhotoImage(file='smile.gif')
#Create an image in the canvas object
image_item = canvas.create_image((200, 140), image=smiley)
#Bind the Button Event to the Canvas Widget
canvas.tag_bind(image_item, '<Button-1>', lambda e:
canvas.delete(image_item))
canvas.pack()
win.mainloop()

结果

执行上述代码将显示一张笑脸图像。

现在,在图像上“左键单击”鼠标按钮,它将立即从画布中删除。

更新于: 2021 年 4 月 15 日

3K+ 次浏览

开启您的 职业生涯

完成课程,获得认证

开始
广告