我已经写了什么应该是一个简单的代码,在Python / Tkinter中有两个具有图像的画布。它总是在第二个画布上失败,提示该图像不存在。
我尝试从另一个画布开始,图像在该画布上工作正常,但是当调用先前起作用的画布时,它再次失败。
我还尝试从子例程中定义图像并将其全局化。没有帮助
from tkinter import *
def canvas1():
global root,root2,w,photo2,photo1
root=Tk()
Button(root,text="new1",command=canvas2).grid()
photo1 = PhotoImage(file="person.png")
photo2 = PhotoImage(file="person2.png")
w=Label(root,image=photo1)
w.photo = photo1
w.grid(column=3,row=1)
root.mainloop()
def canvas2():
global root,root2,x,photo2,photo1
root2=Tk()
Button(root2,text="new2",command=canvas1).grid()
photo1 = PhotoImage(file="person.png")
photo2 = PhotoImage(file="person2.png")
x=Label(root2,image=photo2)
x.photo = photo2
x.grid(column=3,row=1)
root2.mainloop()
canvas1()
我应该只有一个画布,该画布可以在两个画布上调用另一个带有图像的画布 我知道图像文件还可以,因为在第一次调用画布时它们可以正常工作。