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

Tkinter 버튼 위젯의 텍스트 가져오기 – .cget() 함수 활용법

Tkinter로 애플리케이션을 개발하다 보면 버튼에 설정된 텍스트(값)를 이름이나 속성을 기준으로 다시 가져와야 하는 경우가 있습니다. 이럴 때 유용하게 사용할 수 있는 것이 바로 .cget() 함수입니다.

.cget() 함수는 모든 Tkinter 위젯에서 지원되며, 위젯의 구성 정보(configuration)인 텍스트, 값, 이름 등을 손쉽게 조회할 수 있습니다. 인자로 원하는 옵션명을 전달하면 해당 속성의 현재 값을 반환합니다.

예제 코드

아래 예제에서는 버튼을 하나 생성한 뒤, .cget() 함수를 사용해 버튼의 텍스트를 변수 mytext에 저장합니다. 그리고 이 변수를 활용하여 레이블(Label) 위젯에 버튼의 텍스트를 화면에 출력합니다.

# tkinter 라이브러리 임포트
from tkinter import *
from tkinter import ttk

# tkinter 프레임(윈도우) 인스턴스 생성
win = Tk()

# 윈도우 크기 설정
win.geometry("750x250")

# 버튼 생성
button = ttk.Button(win, text="My Button")
button.pack()

# 버튼의 텍스트 가져오기
mytext = button.cget('text')

# 버튼 정보를 출력할 레이블 생성
Label(win, text=mytext, font=('Helvetica 20 bold')).pack(pady=20)

win.mainloop()

실행 결과

위 코드를 실행하면 750x250 크기의 윈도우가 열리고, 상단에는 "My Button"이라는 텍스트를 가진 버튼이 표시됩니다. 그 아래에는 .cget() 함수로 가져온 버튼의 텍스트가 굵은 글씨체의 레이블로 함께 나타납니다.

이처럼 .cget() 함수를 사용하면 별도의 전역 변수나 복잡한 로직 없이도 위젯의 현재 설정값을 간단히 조회할 수 있어, 동적으로 UI를 제어해야 하는 상황에서 매우 유용합니다.