Tkinter:确定相对于根窗口的小组件位置

时间:2011-05-02 17:45:46

标签: python tkinter

tkinter MouseWheel事件只能绑定到根窗口。因此,事件位置也相对于根位置。 对于画布缩放操作,我想获得MouseWheel事件,其中包含有关画布中光标位置的信息。为了计算这个,我想我会简单地在根窗口中减去画布的位置。现在的问题是,我无法找到窗口中的画布位置。

我试过了: can.grid_bbox - > (0,0,0,0)? can.grid_info can.grid_location cget( “偏移”) pointerx

和其他一些我不记得了。不知怎的,我一直想念它,有人能给我一个提示吗?

--- ---编辑 为了获得相对于画布的mouseWheel事件的位置,这种方法似乎有效:

def on_mouse_wheel(self, event):
    xCan = event.x_root - self.can.winfo_rootx()
    yCan = event.y_root - self.can.winfo_rooty()

1 个答案:

答案 0 :(得分:2)

您希望使用winfo_x and winfo_y方法获取相对于父级的x / y位置。