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

파이썬 Tkinter에서 창의 위젯을 삭제하는 방법

Tkinter에서 위젯 삭제하기

애플리케이션을 개발하다 보면 더 이상 필요하지 않은 위젯을 화면에서 제거해야 하는 경우가 종종 발생합니다. Tkinter에서는 destroy() 메서드를 사용하면 창(window)이나 프레임(frame)에 배치된 위젯을 간단하게 삭제할 수 있습니다. 이 메서드는 별도의 함수를 정의한 뒤 해당 위젯에 연결하여 호출하는 방식으로 사용합니다.

예제 코드

다음 예제에서는 버튼을 클릭하면 창에 표시된 텍스트 레이블(Label) 위젯이 사라지도록 구현했습니다.

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

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

# 창 크기 설정
win.geometry("650x450")

# 화면에서 텍스트를 제거하는 함수 정의
def delete_text():
    text.destroy()

# 텍스트 레이블 위젯 생성
text = Label(win, text="This is a New Line", font=('Aerial bold', 20))
text.pack(pady=20)

# 위젯을 삭제하는 버튼 생성
Button(win, text="Click Here", font=('bold', 20), command=delete_text).pack(pady=10)

win.mainloop()

실행 결과

위 코드를 실행하면 다음과 같은 화면이 출력됩니다.

파이썬 Tkinter에서 창의 위젯을 삭제하는 방법

이제 "Click Here" 버튼을 클릭해 보세요. 버튼에 연결된 delete_text() 함수가 실행되면서 레이블 위젯이 창에서 완전히 제거됩니다.

파이썬 Tkinter에서 창의 위젯을 삭제하는 방법

이처럼 destroy() 메서드는 특정 조건이나 사용자 이벤트에 따라 UI 요소를 동적으로 관리할 때 매우 유용하게 활용됩니다.