📜  tkinter 中关闭窗口事件的消息框 - Python (1)

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

Tkinter 中关闭窗口事件的消息框

当用户关闭窗口时,会触发Tkinter中的关闭事件。如果您想在用户关闭窗口前显示一个消息框,可以使用tkinter.messagebox模块。

下面是一个示例程序,它显示了如何在关闭窗口事件中使用消息框:

import tkinter as tk
from tkinter import messagebox

def on_closing():
    if messagebox.askokcancel("关闭窗口", "您是否确认关闭窗口?"):
        root.destroy()

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

# 填充窗口部件代码

root.mainloop()

在该程序中,on_closing函数被绑定到窗口关闭事件。当用户点击关闭窗口按钮时,on_closing函数被调用。该函数使用tkinter.messagebox.askokcancel方法来弹出一个消息框,询问用户是否确认关闭窗口。如果用户点击了“确认”按钮,窗口被销毁,否则不会销毁。

您也可以更改消息框的标题和内容,以适应您的应用程序。

该程序还使用root.protocol方法,将WM_DELETE_WINDOW协议绑定到on_closing函数。这确保了当用户点击关闭窗口按钮时,on_closing函数被调用,而不是直接关闭窗口。

使用消息框是一种简单而有效的方法,向用户确认关闭窗口。这可以帮助防止用户意外关闭窗口并可能丢失未保存的数据。