Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để lấy tọa độ x và y hiện tại của tiện ích Tkinter?


Tkinter được sử dụng rộng rãi để tạo các ứng dụng dựa trên GUI. Nó có sẵn nhiều bộ công cụ và chức năng hoặc mô-đun có thể được sử dụng để xác định các thuộc tính khác nhau của một ứng dụng cụ thể. Để xây dựng các ứng dụng GUI, nó cung cấp một số widget bao gồm các nút, hộp văn bản và nhãn. Chúng tôi có thể tùy chỉnh vị trí của tiện ích và tọa độ của nó trên khung tkinter bằng cách sử dụng các chức năng và thư viện khác.

Giả sử rằng chúng ta đã tạo một tiện ích nhãn văn bản có một số vị trí trong khung tkinter. Bây giờ, để có được tọa độ thực của tiện ích con, chúng ta có thể sử dụng hình học các phương pháp có sẵn trong thư viện của tkinter.

Chúng tôi sẽ sử dụng winfo_rootx () winfo_rooty () các hàm trả về tọa độ thực của tiện ích con đối với khung hoặc cửa sổ.

Ví dụ

#Import the tkinter library
from tkinter import *

#Create an instance of the tkinter frame
win = Tk()

#Define the geometry of the frame
win.geometry("600x400")

#Define the text-widget
my_text= Text(win, height = 5, width = 52)

# Create label
lab = Label(win, text ="TutorialsPoint.com")

#Configure it using other properties
lab.config(font =("Helvetica", 20))

#Create a button widget
my_button = Button(text="Hello")

#Define the position of the widget
my_button.place(x=100, y=100)

#Update the coordinates with respect to the tkinter frame
win.update()

#Get the coordinates of both text widget and button widget
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)

#Keep the window running
win.mainloop()

Đầu ra

Chạy đoạn mã trên sẽ in vị trí hiện tại của tiện ích con là,

134 157
0 157

Làm cách nào để lấy tọa độ x và y hiện tại của tiện ích Tkinter?