Tkinter에서 버튼을 클릭했을 때 버튼을 사라지게 하는 방법이 있다.
위와같은 버튼이 있다고 했을 때
버튼을 클릭하면
위의 사진처럼 버튼이 아예 사라지는 걸 만들고자 한다.
즉 버튼을 클릭했을 때 버튼이 사라지는 걸 하기 위해선
destory() 함수를 사용하면 된다.
from tkinter import *
win = Tk()
win.geometry('600x600+530+80') # 창 크기 설정
# 버튼을 사라지게 하는 함수
def disappearbutton_1(widget):
button_1.destroy() # 버튼을 완전히 사라지게 하는 destory 함수
# button_1이란 이름의 버튼 생성
button_1 = Button (win, width=10, height=10, bg='red', command = disappearbutton_1, text='버튼')
# button_1 위치 지정
button_1.place(x=100, y=100)
win.mainloop()
버튼을 클릭했을 때 사라지게 하는 코드 전문은 위와 같다.
가장 중요한 부분 2개만 살펴보고자 한다.
button_1 = Button (win, width=10, height=10, bg='red', command = disappearbutton_1, text='버튼')
위의 코드를 보면 button_1이란 이름의 버튼을 생성한 걸 알 수 있다.
width, height로 버튼의 크기를 지정하고 bg의 경우 배경색을 지정하는 건데
bg='red'를 통해 버튼 색을 빨강색으로 했다.
command는 특정 이벤트가 발생하면 어떠한 함수를 호출하는 아이다.
이벤트를 직역하자면 어떤 사건을 뜻한다.
여기서 이벤트, 즉 사건은 버튼이 클릭됐을 때 일 것이다.
나는 버튼이 클릭됐을 때 버튼이 사라지는 이벤트를 원해서
버튼이 사라지도록 하는 함수인 disapperbutton_1이란 함수를 만들었다.
내가 버튼을 클릭하면 command라는 아이가
disapperbutton_1이란 함수를 호출한다.
"어이! disapperbutton_1!
너 이제 일 할 시간이야! 얼른 일어나!"
갑자기 command란 아이한테 호출당한 disapperbutton_1은 헐레벌떡 일어나서
일을 하러 나간다. disapperbutton_1은 무슨 일을 하는 아이일까?
# 버튼을 사라지게 하는 함수
def disappearbutton_1(widget):
button_1.destroy() # 버튼을 완전히 사라지게 하는 destory 함수
위의 코드를 봐보니 disapperbutton_1는 button_1이란 버튼을
사라지게 하는 일을 하는 함수였다.
버튼이 사라지게 하기 위해선 destrory 함수를 사용한다.
destroy 함수 앞에는 버튼의 변수명(버튼의 이름)을 작성해 줘야 한다.
나는 버튼의 이름을 위해서 button_1로 지정해줬기에
button_1.destroy() 라고 작성하면
button_1이란 이름을 가진 버튼을 사라지게 해줘!가 된다.
'BOX-IT > Python' 카테고리의 다른 글
[Python] Pygame 설치 안될 때: This error originates from a subprocess (1) | 2022.11.28 |
---|---|
[Python/Tkinter] Tkinter에서 음악 추가하는 방법 - pygame (0) | 2022.11.19 |
[Python/Tkinter] Tkinter에서 버튼 테두리 없애는 방법 (0) | 2022.11.08 |
[Python/Tkinter] 마우스로 화면 클릭했을 때, 다른 이미지 보이게 하기 (0) | 2022.11.01 |
[Python] 파이썬 실행 파일 만드는 방법 (0) | 2022.10.23 |