环境:通过pyEnv,macOS Catalina 10.15,Python 3.7.4,Tcl / Tk 8.6.9,Visual Studio Code 1.39.2
在调试代码时,Python菜单在启动时不响应鼠标单击时出现问题。
升级到Catalina后,我通过Homebrew重新安装了pyEnv和Tcl / Tk,然后通过pyEnv安装了Python 3.7.4。这与我在其他Mac上运行macOS Mojave的Mac上的设置相同,但我的其他Mac上没有显示此问题。
使用macOS Catalina的Mac上还有其他人遇到此问题吗?
import tkinter as tk
root = tk.Tk()
root.mainloop()
运行此命令时,它将在我的Mac上显示一个tk窗口,但顶部的Python菜单直到我CMD + Tab或从应用程序中单击,然后单击CMD + Tab或单击后,才响应鼠标单击,回到里面。在完成上述两项操作之一之后,菜单将对鼠标单击做出应有的响应。就像Python没有重点一样,但据我所知,它确实有作用。
编辑:上面的代码非常简单,仅用于说明要点。但是为了更好地演示,我添加了带有按钮的框架以及@Mike-SMT建议的root.update_idletasks()。
import tkinter as tk
root = tk.Tk()
root.geometry("300x300+15+15")
myFrame = tk.Frame(root)
myFrame.grid(column=0, row=0, padx=5, pady=5, sticky="nsew")
myButton = tk.Button(myFrame, text="Quit", command=lambda: exit())
myButton.grid(column=0, row=0, padx=10, pady=10, sticky='ew')
root.update_idletasks()
root.mainloop()
答案 0 :(得分:0)
您描述的问题听起来与我几个月前报告的macOS Catalina上的upstream issue in Tk相同,但由于难以再现该问题和找到可行的解决方案,因此该问题仍未解决。
如果您有兴趣获取有关此问题的任何更新,或者想帮助调查,建议在票证上添加一条评论。