如何获取小部件的当前x和y坐标?

Cri*_*Rin 1 python tkinter move

我目前正在为“连续4个”游戏编写一个游戏项目。为了使图片小部件磁盘位于该列中的动画,我一直在考虑为此创建一个while循环:

while widgetx != __ and widgety != __
Run Code Online (Sandbox Code Playgroud)

在空白部分的位置将有我需要获取的值。

我的问题是是否有一个函数返回小部件的当前值xy值。

ray*_*sco 5

您可以尝试winfo_rootx()winfo_rooty()

来自effbot.com

winfo_rootx()

获取窗口小部件左边缘相对于屏幕左上角的像素坐标。

返回:根坐标。

winfo_rooty()

获取窗口小部件上边缘相对于屏幕左上角的像素坐标。

返回:根坐标。

来自nullege.com的示例:

# get self position & height
lv_x = self.winfo_rootx()
lv_y = self.winfo_rooty()
Run Code Online (Sandbox Code Playgroud)


Bry*_*ley 5

winfo_rootx()winfo_rooty()返回相对于屏幕左上角的坐标。winfo_xwinfo_y返回窗口相对于其父窗口的坐标。

  • 不要忘记,有时您必须使用`root.update()`才能使用winfo_x和winfo_y。(否则你将只有 1 和 0 作为值) (2认同)