Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Tkinter 위젯의 너비를 구하는 방법 완벽 가이드


Tkinter 위젯은 Tkinter 애플리케이션 창 안에 배치되어야 합니다. 모든 위젯은 미리 정의된 속성이나 함수를 사용하여 자유롭게 설정하고 사용자 지정할 수 있습니다.

Tkinter 애플리케이션에서 특정 위젯의 너비를 확인하고 싶다면 winfo_width() 메서드를 사용하면 됩니다. 이 메서드는 해당 위젯의 실제 너비(픽셀 단위)를 반환하며, 반환된 값을 출력하여 확인할 수 있습니다.

예제 코드

#Import the required libraries
from tkinter import *

#Create an instance of Tkinter Frame
win = Tk()

#Set the geometry
win.geometry("700x350")

#Set the default color of the window
win.config(bg='#aad5df')

#Create a Label to display the text
label=Label(win, text= "Hello World!",font= ('Helvetica 18 bold'), background= 'white', foreground='purple1')
label.pack(pady = 50)

win.update()

#Return and print the width of label widget
width = label.winfo_width()
print("The width of the label is:", width, "pixels")

win.mainloop()

실행 결과

위 코드를 실행하면 Label 위젯이 포함된 창이 화면에 나타납니다.

Tkinter 위젯의 너비를 구하는 방법 완벽 가이드

코드를 컴파일하면 콘솔에 Label 위젯의 너비가 출력됩니다.

The width of the label is: 148 pixels

주요 포인트 정리

winfo_width() 메서드는 위젯이 실제로 렌더링된 후에 호출해야 정확한 값을 얻을 수 있습니다. 이를 위해 win.update()를 먼저 호출하여 창을 갱신한 뒤 너비를 조회하는 것이 중요합니다. 만약 update() 없이 메인루프가 시작되기 전에 호출하면 위젯의 크기가 아직 계산되지 않아 1과 같은 기본값이 반환될 수 있습니다.