tkinter中如何关闭窗口
在tkinter中关闭窗口有多种方式,可以通过点击窗口的关闭按钮、调用窗口的destroy()
方法或使用sys.exit()
方法等。本文将详细介绍这些方法的使用方式及适用场景。
通过关闭按钮关闭窗口
在tkinter中,用户通常可以通过点击窗口右上角的关闭按钮来关闭窗口。当用户点击关闭按钮时,窗口会自动触发关闭事件,我们可以通过设置窗口的protocol()
方法来处理这个关闭事件。下面是一个简单的示例代码:
import tkinter as tk
def on_closing():
if tk.messagebox.askokcancel("关闭窗口", "确定要关闭窗口吗?"):
root.destroy()
root = tk.Tk()
root.protocol("WM_DELETE_WINDOW", on_closing)
root.mainloop()
在上面的代码中,我们创建了一个简单的tkinter窗口,并定义了一个名为on_closing()
的回调函数。在回调函数中,我们使用tk.messagebox.askokcancel()
方法弹出一个对话框,询问用户是否确定关闭窗口。如果用户点击“确定”按钮,则调用窗口的destroy()
方法关闭窗口。
通过destroy()方法关闭窗口
除了通过关闭按钮关闭窗口外,我们也可以直接调用窗口对象的destroy()
方法来关闭窗口。下面是一个示例代码:
import tkinter as tk
def close_window():
root.destroy()
root = tk.Tk()
btn = tk.Button(root, text="关闭窗口", command=close_window)
btn.pack()
root.mainloop()
在上面的代码中,当用户点击按钮时,会触发close_window()
函数,该函数调用了root.destroy()
方法关闭窗口。
使用sys.exit()方法关闭窗口
另一种关闭窗口的方法是使用sys.exit()
方法,该方法会直接退出程序。下面是一个示例代码:
import tkinter as tk
import sys
def close_window():
sys.exit()
root = tk.Tk()
btn = tk.Button(root, text="关闭窗口", command=close_window)
btn.pack()
root.mainloop()
在上面的代码中,当用户点击按钮时,会触发close_window()
函数,该函数调用了sys.exit()
方法退出程序。
小结
以上就是在tkinter中关闭窗口的几种方法,包括通过关闭按钮关闭窗口、调用destroy()
方法关闭窗口以及使用sys.exit()
方法退出程序。根据实际情况选择合适的方法,以达到关闭窗口的目的。