버튼으로 Tkinter 창을 닫는 방법

  1. root.destory()Tkinter 창을 닫는 클래스 메소드
  2. Tkinter 창을 닫는 비 클래스 메소드
  3. root.destroy 함수를 버튼의 command 속성에 직접 연결
  4. Tkinter 창을 닫는 root.quit

Tkinter GUI 의 버튼에 첨부 된 기능 또는 명령을 사용하여 사용자가 Tkinter 창을 클릭하면 창을 닫을 수 있습니다.

root.destory()Tkinter 창을 닫는 클래스 메소드

try:
    import Tkinter as tk
except:
    import tkinter as tk
    

class Test():
   def __init__(self):
       self.root = tk.Tk()
       self.root.geometry('100x50')
       button = tk.Button(self.root, 
                          text = 'Click and Quit', 
                          command=self.quit)
       button.pack()
       self.root.mainloop()

   def quit(self):
       self.root.destroy()
        
app = Test()

destroy()는 창을 파괴하거나 닫습니다.

Tkinter 는 버튼으로 창을 닫습니다

Tkinter 창을 닫는 비 클래스 메소드

try:
    import Tkinter as tk
except:
    import tkinter as tk

root = tk.Tk()
root.geometry("100x50")

def close_window():
    root.destroy()

button = tk.Button(text = "Click and Quit", command = close_window)
button.pack()

root.mainloop()

root.destroy 함수를 버튼의 command 속성에 직접 연결

추가 함수 close_window를 더 이상 정의하지 않고 root.destroy함수를 버튼 command속성에 직접 바인딩 할 수 있습니다.

try:
    import Tkinter as tk
except:
    import tkinter as tk

root = tk.Tk()
root.geometry("100x50")

button = tk.Button(text = "Click and Quit", command = root.destroy)
button.pack()

root.mainloop()

Tkinter 창을 닫는 root.quit

root.quit 는 Tkinter Window 뿐만 아니라 더 정확하게는 전체 Tcl 인터프리터를 종료합니다.

Tkinter 앱이 Python 유휴 상태에서 시작되지 않은 경우 사용할 수 있습니다. quit 은 Tkinter 앱을 죽일뿐만 아니라 유휴도 Tkinter 애플리케이션이기 때문에 유휴 상태이므로 Tkinter 앱이 유휴 상태에서 호출되면 root.quit 를 사용하지 않는 것이 좋습니다.

try:
    import Tkinter as tk
except:
    import tkinter as tk

root = tk.Tk()
root.geometry("100x50")

button = tk.Button(text = "Click and Quit", command = root.quit)
button.pack()

root.mainloop()

관련 문장 - Tkinter Button

  • Tkinter 버튼 색상을 변경하는 방법