在 PyCharm 中运行时,Tkinter 窗口显示为黑色

sim*_*s-k 6 python tkinter pycharm

无论我如何指定背景颜色,Tkinter 背景在运行脚本时都会显示为黑色。

我在 macOS 12.2.1 上使用 PyCharm CE 2021.3.2。

Python解释器 = Python 3.8,有5个包(如下):

  • 枕头9.0.1
  • 未来0.18.2
  • 点 22.0.3
  • 安装工具 57.0.0
  • 轮子0.36.2

窗口看起来像这样: 黑色、空白的 Tkinter 窗口

我试过了:

import tkinter as tk

window = tk.Tk()
window.title("Test")

window.geometry("600x400")

window.mainloop()
Run Code Online (Sandbox Code Playgroud)

尝试更改window.configure(bg="white")以及但window['bg'] = "white"无济于事window['background'] = "white"

Nie*_*r-Y 6

我不知道是否还有其他人仍然坚持这个问题,这篇文章解决了我的问题。

基本上是在安装 python 时pyenv获取了错误的版本tkinter (tcl-tk),如果事先tcl-tk没有安装的话brew

以下是命令:

下面的命令与前面提到的帖子完全相同,但我修改了每条评论以尝试使它们对新手更友好。

卸载两者,

$ brew uninstall tcl-tk使用自制程序卸载 tcl-tk

$ pyenv uninstall 3.10.4卸载 pyenv 中当前的 python。最后一部分是你的Python的当前版本,可以用以下命令检查python --version

然后按照正确的顺序重新安装,

$ brew install tcl-tk重新安装tcl-tk,不需要指定版本

$ pyenv install 3.10.4重新安装Pythonpyenv

$ pyenv global 3.10.4设置为全局Python版本

这个问题应该消失。

一些旁注:

  1. 您肯定想使用或其他工具来为 python 设置虚拟环境,可以在此处pyenv查看更多阅读内容。
  2. 当然,这是一个“黑暗模式”问题,但没有一个按钮可以切换来解决这种情况。正如其他答案所建议的,这是版本冲突,只能通过在 Mac 上获取正确的版本来解决(我的是 2022 M1 Mac)。
  3. Tk-tcl 是一种基于 shell 的语言,Tkinter 是 tk-tcl 的包装器,使其可以在 python 中工作,并且现在很大程度上默认预安装在 python 中。可以在此处找到 tkinter 的更多读物。


sim*_*s-k 4

感谢@typedecker

问题出在 Python 3.8 和 Monterey 更新上。

使固定:

首先安装 Python 3.10,然后按照本教程进行操作:

创建 Python 3.10 虚拟环境

然后只需在 PyCharms 中选择新创建的虚拟环境并运行即可。