首页 > 解决方案 > Tkinter 销毁并退出冻结 Mac 上的根窗口

问题描述

当按下窗口下方代码中的按钮时,窗口冻结并出现旋转的死亡球。同样的问题出现在quit. 我在 MacOS 10.14.3 上运行带有 tk 版本 8.6 的 python 3.7。

import tkinter as tk

root = tk.Tk()
tk.Button(root, text="Quit", command=root.destroy).pack()
root.mainloop()

有什么建议么?

标签: pythonpython-3.xtkintertk

解决方案


root.quit 是您应该用来关闭应用程序的主(根)窗口的工具。

您看到的问题可能是因为您正在从 IDE 运行代码。[例如 Spyder,我碰巧知道第一手资料会在 root.quit() 上挂起 tkinter 应用程序]

从终端提示符运行您的程序,您应该没有问题。

重要提示:另外,请确保您使用的是 tk 版本 8.6.8,因为版本 8.6.9 已知 MacOS 10.14 Mojave 存在问题。 https://bugs.python.org/issue35402 https://bugs.python.org/issue35485


推荐阅读