我需要获取鼠标相对于 tkinter 窗口的位置。
问问题
8870 次
2 回答
6
一般来说,您永远不需要“获取”此信息,因为它是作为传入事件对象的一部分提供给您的。您可能仅在响应事件时才需要此信息,而事件会为您提供此信息。
更简洁地说,要获取信息,您只需从事件对象中检索它。
这是一个例子:
import Tkinter
class App:
def __init__(self, root):
f = Tkinter.Frame(width=100, height=100, background="bisque")
f.pack(padx=100, pady=100)
f.bind("<1>", self.OnMouseDown)
def OnMouseDown(self, event):
print "frame coordinates: %s/%s" % (event.x, event.y)
print "root coordinates: %s/%s" % (event.x_root, event.y_root)
root=Tkinter.Tk()
app = App(root)
root.mainloop()
于 2010-07-20T11:24:28.883 回答
3
获取鼠标移动事件的屏幕坐标(x
/ y_root
)并减去窗口的屏幕坐标(window.winfo_rootx()
/ y()
)。
于 2010-07-20T08:30:11.757 回答