如何将图像放在多个画布上?

时间:2019-05-08 22:54:16

标签: python image canvas tkinter

我已经写了什么应该是一个简单的代码,在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()

我应该只有一个画布,该画布可以在两个画布上调用另一个带有图像的画布 我知道图像文件还可以,因为在第一次调用画布时它们可以正常工作。

0 个答案:

没有答案