Tkinter(tkinter.Tk())挂在MacOS上

时间:2019-06-18 21:57:32

标签: python-3.x macos tkinter

参考:Anaconda的MacOS 10.14,Python 3.6,Spyder 3.3.4

我刚开始在Python中使用tkinter,并且正在尝试运行从Spyder内部找到的here的简单演示代码。为了完整起见,六行脚本如下:

import tkinter as tk 
r = tk.Tk() 
r.title('Counting Seconds') 
button = tk.Button(r, text='Stop', width=25, command=r.destroy) 
button.pack() 
r.mainloop()

但是,当我运行它时,它挂起了。没有沙滩球,没有冰冻,什么也没发生。摆脱挂起命令的唯一方法是重新启动IPython内核,或者关闭并重新启动Spyder。

我想我已经将问题线跟踪到:

r = tk.Tk()

如果由其自身执行,将以相同的方式导致挂起。

我知道Mac OS上的Tkinter和Python之间存在许多问题(例如this),但我所见似乎都没有一个问题可以重现此特定问题。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

部分感谢@Saad的一些有用评论,我想我已经解决了这个问题。 Python 3.6.7(来自Anaconda)和tk / tcl 8.6.9似乎玩起来不太好。如果我将tk / tcl降级到8.6.8,则无论我使用的IDE如何,一切都可以正常工作。