Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Khác biệt giữa root.destroy() và root.quit() trong Tkinter (Python)

Khi gọi phương thức destroy() với đối tượng cửa sổ Tkinter, nó sẽ kết thúc tiến trình mainloop và hủy tất cả các widget bên trong cửa sổ. Phương thức destroy() chủ yếu dùng để kết thúc và dừng trình thông dịch chạy nền.

Trong khi đó, phương thức quit() có thể được gọi để dừng tiến trình sau hàm mainloop(). Ta có thể minh họa chức năng của cả hai phương thức bằng cách tạo đối tượng Button.

Ví dụ

# Nhập thư viện cần thiết
from tkinter import *

# Tạo instance của frame tkinter
win = Tk()

# Thiết lập geometry của frame
win.geometry("650x450")

# Định nghĩa hàm cho đối tượng Button
def quit_win():
    win.quit()

def destroy_win():
    win.destroy()

# Nút cho phương thức Quit
Button(win, text="Quit", command=quit_win, font=('Helvetica bold', 20)).pack(pady=5)

# Nút cho phương thức Destroy
Button(win, text="Destroy", command=destroy_win, font=('Helvetica bold', 20)).pack(pady=5)

win.mainloop()

Kết quả

Chạy code sẽ hiển thị cửa sổ với hai nút "Quit" và "Destroy".

Khác biệt giữa root.destroy() và root.quit() trong Tkinter (Python)

Cảnh báo − quit() sẽ chấm dứt ứng dụng đột ngột, do đó khuyến nghị đóng ứng dụng từ trình quản lý sau khi thực thi.