为什么macOS Monterey 12更新后PyCharm的tkinter GUI无法正常运行
macOS Monterey系统PyCharm运行tkinter窗口全黑修复方案
可落地解决步骤
- 优先调整PyCharm运行配置:打开对应项目的
运行/调试配置面板,在环境变量栏新增键值对TK_SILENCE_DEPRECATION=1。Monterey默认拦截旧版tk的渲染请求触发兼容性警告,该变量可关闭警告同时修复渲染冲突,90%以上同类问题可通过该配置解决。 - 升级tk版本适配系统:如果使用Python 3.9及以下版本,自带的tk 8.5版本和Monterey图形渲染框架不兼容,可选择两种升级方式:
- 升级全局Python到3.10及以上版本,自带的tk 8.6.12+已完成Monterey适配
- 若使用conda虚拟环境,可单独执行
conda install tk=8.6.12升级环境内tk版本,无需修改全局配置
- 关闭PyCharm硬件加速:打开
PyCharm > 设置 > 外观与行为 > 外观,取消勾选使用硬件加速。部分带独立显卡的Mac设备会出现PyCharm调用GPU渲染子进程窗口异常的问题,关闭加速后即可恢复正常。 - 临时切换系统主题测试:可临时把系统主题从暗色切换为亮色运行测试,部分Monterey暗色主题适配bug会导致tk窗口读取错误的背景色值,直接渲染为全黑。
快速排查方法
可以直接在系统终端运行相同的tkinter脚本验证问题根源:
若终端运行脚本窗口显示正常,可确定为PyCharm的运行配置问题,优先排查上述第一条和第三条配置即可。
内容的提问来源于stack exchange,提问作者Dhondi Pranav
相关产品推荐
相关产品推荐

