python-3.x - 使用 PhotoIMage 获取 tclerror
问题描述
我正在尝试使用图像作为画布背景。我之前是成功的,现在无论我做什么都会出错。我知道的唯一区别是我之前使用的是 3.7,而现在我使用的是 3.5。
经过一些研究,我能够使用 jpg 图像作为画布背景。我关闭了 Raspberry Pi,第二天早上启动它时它无法启动。我用 3.5 刷了一张新的 sd 卡(这就是我发现的全部),现在我收到了一个错误。我试过jpg,png,gif。我尝试了完整路径,相对路径。这是代码:
w = Tk()
w.geometry = ("1920x1080")
c = Canvas(w, height=1080, width=1920,)
c.pack()
# I tried everything here
img = Image.open("Dash-Background.png")
background_image = ImageTk.PhotoImage(img)
c.create_image(0, 0, background_image, anchor="nw")
我希望得到一个 1920x1080 的窗口,我的图像像以前一样居中。相反,我得到一个黑色背景的窗口(好的),但没有图像和以下错误:
_tkinter.tclerror: unknown option "pyimage1"
我究竟做错了什么??
解决方案
将调用替换为create_image
:
c.create_image(0, 0, image=background_image, anchor="nw")
推荐阅读
- java - @Service @Controller @Repository 的 Java Spring 错误:创建 bean 时出错
- flutter - 如何使用 Flutter 在 Android Studio 中禁用警告
- c - 如何在C中调用引号/字符串内的变量?
- python - 如何在 google colab 中使用 tensorflow 1.6.0,或者如何在 colab 中使用 yolo v3 keras
- powershell - 如何使用 PowerSell 获取类提供的验证参数类
- python - 最终确定和汇总结果时出错
- json - Django Mongodb 转储数据不是有效的 json 格式
- telegram-bot - 为什么 Telegram 在 webhook 上给我一个空的 POST 请求?
- java - 如何以编程方式在 Android 的 LinearLayout 的顶部中心绘制一个圆圈?
- android - 用 ImageFormat.Private 格式解释来自 ImageReader 的数据