如何为Canvas内容绑定事件?

时间:2018-12-02 08:28:10

标签: python events button canvas tkinter

我有Canvas面板带有渐变背景色,我想在其中添加一些带有png图像的按钮。使用画布只是制作优质透明纹理按钮的一种解决方案。我正在使用create_image方法,但它返回int并且无法将事件绑定到它。我如何bind事件Canvas内容?

self.tab = tk.Canvas(width=xc,height=yc,bd=0, highlightthickness=0)
self.tab.pack(side=tk.BOTTOM, fill=tk.X)
bg = self.tab.create_image(xc/2, yc/2, image=self.toolbar_image)

例如,我需要bind事件到bg。我无法bind参加Canvas事件,因为将来会有更多按钮需要点击。

1 个答案:

答案 0 :(得分:0)

画布使用标签来做到这一点:

tab.create_image(x, y, image=img, tags='item')
tab.tag_bind('item', '<Button-1>', click)