Tkinter。生成图像名称后,无法使用图像标签显示图像

时间:2018-07-28 13:30:27

标签: python tkinter

我编写了一个简单的tkinter GUI,按下该按钮后,它将图像和标签更改为比萨饼或汉堡的图像和标签。

import tkinter as tk
root=tk.Tk()
root.title("Sausage To Burger Or Pizza")
#Variables
FoodName=tk.StringVar()
FoodName.set("Sausage")
#Images
Sausage=tk.PhotoImage(file="Sausage.png")
Burger=tk.PhotoImage(file="Burger.png")
Pizza=tk.PhotoImage(file="Pizza.png")
#Labels
FoodLabel=tk.Label(root,textvariable=(FoodName))
FoodLabel.grid(row=1,column=1)
FoodImageLabel=tk.Label(root,image=Sausage)
FoodImageLabel.grid(row=2,column=1)

def change_food():
    import random
    Food = ["Burger","Pizza"]
    num= random.randrange(len(Food))

    FoodName.set(Food[num])
    FoodImageLabel.configure(image=Food[num])

#Button
ChangeButton=tk.Button(root,text="change",command=change_food)
ChangeButton.grid(row=3,column=1)

此代码会产生此错误。

在处理上述异常期间,发生了另一个异常:

_tkinter.TclError: image "Pizza" doesn't exist

尽管在与代码文件相同的文件中存在“ Pizza.png”。

0 个答案:

没有答案