📜  tkinter 绑定到窗口关闭 - Python (1)

📅  最后修改于: 2023-12-03 15:05:36.305000             🧑  作者: Mango

tkinter 绑定到窗口关闭 - Python

在 Python 中,tkinter 是一个标准的 GUI 库,用于创建 GUI 应用程序。当用户关闭 tkinter 窗口时,您可能需要执行某些操作。在这种情况下,您可以使用 protocol() 方法将 tkinter 应用程序绑定到特定的关闭事件。

以下是一个例子,演示如何使用 protocol() 方法在 tkinter 应用程序中绑定关闭事件。

import tkinter as tk

def on_closing():
    if tk.messagebox.askokcancel("Quit", "Do you want to quit?"):
        root.destroy()

root = tk.Tk()
root.title("My Application")
root.protocol("WM_DELETE_WINDOW", on_closing)

root.mainloop()

在这个例子中,我们定义了一个on_closing()函数,该函数将在窗口关闭时被调用。如果用户同意关闭窗口,destroy()方法将被调用,窗口将被关闭。

在主窗口创建后,我们使用 protocol() 方法将它绑定到 WM_DELETE_WINDOW 事件上。这样,当用户点击窗口关闭按钮时,该事件将被触发,on_closing()函数将被调用。

注意,在上面的代码中,我们还导入了 tk.messagebox,以便在窗口关闭时显示一个对话框,询问用户是否要退出应用程序。

总之,使用 protocol() 方法将 tkinter 应用程序绑定到窗口关闭事件是一种简单且有效的方法,可以确保在用户关闭应用程序时执行必要的操作。