画布未绑定到类tkinterPython3中的鼠标按钮

2024-10-01 22:37:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试将画布绑定到鼠标单击,如this answer中所述,但在类中。但是callback函数没有被调用。这里的所有related{a3}似乎在尝试绑定时调用了callback()函数,而不是引用它。我正在引用它,但它仍然不起作用

from tkinter import *

class BindingTrial():
    def __init__(self,root,canvas):
        self.root = root
        self.canvas = canvas
        self.canvas.bind("Button-1",self.callback)

    def callback(self,event):
        print ("clicked at", event.x, event.y)

root = Tk()
canvas= Canvas(root, width=100, height=100)
bt = BindingTrial(root,canvas)
canvas.pack()
root.mainloop()


Tags: 函数answerfromselfeventdef画布callback
1条回答
网友
1楼 · 发布于 2024-10-01 22:37:30

您需要使用"<Button-1>"调用按钮绑定,回调应该接受self作为第一个参数

class BindingTrial():
    def __init__(self,root,canvas):
        self.root = root
        self.canvas = canvas
        self.canvas.bind('<Button-1>',self.callback)

    def callback(self, event):
        print ("clicked at", event.x, event.y)  

相关问题 更多 >

    热门问题