버튼으로 Tkinter 창을 닫는 방법

Jinku Hu 2023년1월30일
  1. root.destroy()Tkinter 창을 닫는 클래스 메소드
  2. Tkinter 창을 닫는 비 클래스 메소드
  3. root.destroy 함수를 버튼의 command 속성에 직접 연결
  4. Tkinter 창을 닫는 root.quit
버튼으로 Tkinter 창을 닫는 방법

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

root.destroy()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()
작가: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

관련 문장 - Tkinter Button