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

Tkinter에서 버튼 클릭으로 Entry 위젯의 텍스트·값 설정하는 방법

Tkinter Entry 위젯이란?

Tkinter의 Entry 위젯은 한 줄짜리 텍스트를 입력하거나 표시할 때 사용하는 가장 기본적인 위젯입니다. Entry 위젯의 값을 조작하는 핵심 메서드는 두 가지로, 기존 내용을 지우는 delete()와 새로운 값을 넣는 insert()입니다.

이 글에서는 Button 위젯을 활용해 버튼을 클릭하는 순간 Entry 위젯의 내용을 동적으로 변경하는 방법을 알아보겠습니다.

구현 원리

동작 방식은 매우 간단합니다. 버튼이 클릭되면 미리 정의해 둔 함수가 호출되고, 이 함수 안에서 다음 순서로 처리됩니다.
1. delete(0, END) — Entry 위젯의 처음(인덱스 0)부터 끝(END)까지 기존 텍스트를 모두 삭제합니다.
2. insert(0, txt) — 인자로 전달받은 새 문자열을 처음 위치에 삽입합니다.

예제 코드

# 필요한 라이브러리 임포트
from tkinter import *

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

# 값을 변경하는 함수 정의
def change_text(txt):
    text.delete(0, END)
    text.insert(0, txt)

# 프레임의 크기 설정
win.geometry("600x250")

# Entry 위젯 생성
text = Entry(win)
text.pack()

# 내용을 변경/설정하는 버튼 생성
btn = Button(win, text="설정", command=lambda: change_text("새로운 텍스트입니다"))
btn.pack(pady=20)
win.mainloop()

실행 결과

위 코드를 실행하면 Entry 위젯과 '설정' 버튼이 포함된 창이 나타납니다.

Tkinter에서 버튼 클릭으로 Entry 위젯의 텍스트·값 설정하는 방법

이제 '설정' 버튼을 클릭해 보세요. 기존에 입력되어 있던 내용이 사라지고, lambda 함수를 통해 전달된 새로운 텍스트로 Entry 위젯의 값이 즉시 교체됩니다.

Tkinter에서 버튼 클릭으로 Entry 위젯의 텍스트·값 설정하는 방법

마무리

delete()와 insert()의 조합만으로도 Entry 위젯의 값을 자유롭게 갱신할 수 있습니다. 이 기법은 폼 초기화, 검색 결과 표시, 계산 결과 자동 입력 등 실제 GUI 애플리케이션에서 폭넓게 활용되는 패턴이므로 꼭 익혀두시기 바랍니다.