Python 如何在tkinter中单击图像时获取图像的x轴、y轴值
我试图在plone站点的tkinter中单击图像时获取图像的(x轴,y轴)值。因此,每当我单击图像时,我都需要获取图像的(x轴,y轴)值。问题是我无法获取值 我已经在tkinter的画布上动态创建了图像。因此,当我单击图像时,我需要获得x轴、y轴的值。我将在下面深入解释我的代码Python 如何在tkinter中单击图像时获取图像的x轴、y轴值,python,tkinter,Python,Tkinter,我试图在plone站点的tkinter中单击图像时获取图像的(x轴,y轴)值。因此,每当我单击图像时,我都需要获取图像的(x轴,y轴)值。问题是我无法获取值 我已经在tkinter的画布上动态创建了图像。因此,当我单击图像时,我需要获得x轴、y轴的值。我将在下面深入解释我的代码 class A(BrowserView): def B(event): x = event.x y = event.y def C(self): root = Tk()
class A(BrowserView):
def B(event):
x = event.x
y = event.y
def C(self):
root = Tk()
canvas = Canvas(width = 200, height = 250, bg = 'white')
canvas.pack(expand = 'NO', fill = BOTH)
gif1 = ImageTk.PhotoImage(file = 'image1.png')
D=canvas.create_image(50,50, image = gif1, anchor = NW)
canvas.tag_bind(D, '<ButtonPress-1>',self.B()) #it will trigger the method B
canvas.pack()
请帮助我解决此问题。请提前感谢。您对
B
的定义缺少self
参数。您应该这样编码:
def B(self, event):
...
您还将绑定设置错误。创建绑定时,必须为其提供对函数的引用。您所做的是调用函数并将该函数的结果提供给绑定
换句话说,与此相反:
canvas.tag_bind(...,self.B())
您应该这样做:
canvas.tag_bind(...,self.B)
我可以触发这个方法,所以这不是问题。。问题是无法获取x轴、y轴值。。
canvas.tag_bind(...,self.B)