【发布时间】:2021-03-04 19:45:20
【问题描述】:
我想在按下“X”按钮关闭 GUI 时显示一个消息框对话框。我想问用户他是否确定他想用是/否选择退出程序。在对话框中按“是”时出现错误,如果按“否”则 GUI 关闭。 This is the full code
这是我得到的错误:
self.tk.call('destroy', self._w)
_tkinter.TclError:无法调用“destroy”命令:应用程序已被销毁
这是我到目前为止所做的:
import atexit
def deleteme():
result = messagebox.askquestion("Exit", "Are You Sure You Want to Exit?")
if result == "yes":
root.destroy()
else:
return None
atexit.register(deleteme)
【问题讨论】:
-
您遇到的错误是什么?你能给我们完整的追溯吗?如果我不得不猜测,那就是 root 没有定义。
-
请贴出完整代码和错误代码。
-
我发布了完整的代码和我遇到的错误,谢谢!
-
基本上它告诉你那个窗口已经关闭了。您无法关闭已关闭的窗口。在调用该函数之前,您的一段代码会破坏窗口。
标签: python user-interface tkinter messagebox