python - Tkinter 背景图像不会加载
问题描述
我正在尝试创建一个名为 Game 的类,一旦它被调用,就已经具有背景图像等属性。问题是 Tkinter 不会使用以下代码加载背景图像,我不知道为什么。
class Game:
def __init__(self):
self.canvas = tkinter.Canvas(root, height=600, width=600)
root.title('Hangman')
root.minsize(600, 600)
root.maxsize(600, 600)
self.canvas.pack()
self.background_image = tkinter.PhotoImage(file='D:\Python\Projects\Hangman\Images\Platform_3.png')
self.background_label = tkinter.Label(root, image=self.background_image)
self.background_label.place(relwidth=0.3, relheight=0.3, anchor='nw')
解决方案
您可以尝试创建一个变量并为其保存引用。像这样:
add = PhotoImage(file="icons/add.png")
label = Label(image=add)
label.image = add # keep a reference!
接着:
AddButton = Button(MOWindow, image=add, border="0", bg="white", command=AddCallback)
推荐阅读
- maven - mvn clean install 仅构建父模块,子模块未在多模块 maven 项目中构建
- c# - 如何在c#中为一组对象赋值
- php - 为什么我无法使用发布请求使用 jquery 更新数据库中的数据?
- java - 无法创建适当的 N 选择 R 方法
- bash - 如何在不获取所有组合的情况下获得成对的大括号扩展?
- cassandra - 使用日期和时间戳作为分区键和集群键
- c# - Google Dialogflow V2 的 C# 库
- dart - 如何在 Flutter 中将一个小部件与屏幕顶部对齐并将另一个小部件居中到屏幕中间?
- javascript - 如何制作异步/等待获取帖子?收到 500 内部服务器错误
- java - 无限通量和批量写入数据库