首页 > 解决方案 > 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')

标签: pythonimagetkinterbackground

解决方案


您可以尝试创建一个变量并为其保存引用。像这样:

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)

推荐阅读