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

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

Tkinter广泛用于创建基于GUI的应用程序,它有许多工具包、函数或模块可用于定义特定应用程序的不同属性。为了构建GUI应用程序,它提供了一些小部件,包括按钮、文本框和标签,我们可以使用其他函数和库来自定义小部件的位置和坐标在tkinter框中。

假设我们创建了一个文本标签小部件,它在tkinter框中具有某些位置。那么,为了获取小部件的实际坐标,我们可以使用Tkinter库中的 geometry 方法。

我们将使用 winfo_rootx()winfo_rooty() 函数,它们返回小部件相对于框或窗口的实际坐标。

示例

#导入Tkinter库
from tkinter import *

#创建Tkinter框实例
win = Tk()

#定义框的几何
win.geometry("600x400")

#定义文本小部件
my_text = Text(win, height = 5, width = 52)

#创建标签
lab = Label(win, text="TutorialsPoint.com")

#使用其他属性进行配置
lab.config(font=("Helvetica", 20))

#创建按钮小部件
my_button = Button(text="Hello")

#定义小部件的位置
my_button.place(x=100, y=100)

#根据Tkinter框更新坐标
win.update()

#获取文本小部件和按钮小部件的坐标
widget_x1, widget_y1 = my_button.winfo_rootx(),
my_button.winfo_rooty()
widget_x2, widget_y2 = my_text.winfo_rootx(),
my_button.winfo_rooty()

lab.pack()

print(widget_x1, widget_y1)
print(widget_x2, widget_y2)

#保持窗口运行
win.mainloop()

输出

运行上面的代码段将打印小部件的当前位置,

134 157
0 157

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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程