📅  最后修改于: 2023-12-03 15:08:48.662000             🧑  作者: Mango
在 Tkinter 中关闭窗口,可以使用 destroy()
方法来实现。
通常情况下,我们会创建如下的 Tkinter 窗口:
import tkinter as tk
root = tk.Tk()
root.mainloop()
假如我们要在此基础上增加一个 “关闭窗口” 的按钮,点击该按钮可以关闭窗口。
首先,我们需要添加按钮:
import tkinter as tk
root = tk.Tk()
button = tk.Button(root, text="关闭窗口", command=root.destroy)
button.pack()
root.mainloop()
这里,我们使用 Button
控件来创建一个按钮,并将 command
参数赋值为 root.destroy
,这表示在按钮被点击时执行 root.destroy
方法来关闭窗口。
然后我们需要将该按钮添加到窗口中,这里使用了 pack()
方法来实现。
如果要实现点击右上角的叉号按钮关闭窗口,可以添加如下代码:
import tkinter as tk
root = tk.Tk()
def on_closing():
if tk.messagebox.askokcancel("关闭窗口", "确定要关闭窗口吗?"):
root.destroy()
root.protocol("WM_DELETE_WINDOW", on_closing)
button = tk.Button(root, text="关闭窗口", command=root.destroy)
button.pack()
root.mainloop()
这里我们定义了一个名为 on_closing()
的方法来询问用户是否确定要关闭窗口,当用户点击弹出对话框的确定按钮时才会关闭窗口。
然后,我们使用 protocol()
方法来将 on_closing()
方法与窗口的关闭事件进行关联。
最后,我们还是添加了一个按钮,点击该按钮也可以关闭窗口。
以上便是在 Tkinter 中关闭窗口的方法。
代码片段如下所示:
```python
import tkinter as tk
root = tk.Tk()
button = tk.Button(root, text="关闭窗口", command=root.destroy)
button.pack()
def on_closing():
if tk.messagebox.askokcancel("关闭窗口", "确定要关闭窗口吗?"):
root.destroy()
root.protocol("WM_DELETE_WINDOW", on_closing)
root.mainloop()