我正在尝试使用以下方法在我新打开的窗口上的几个位置显示相同的图像:
root = tkinter.Tk()
w, h = root.winfo_screenwidth(), root.winfo_screenheight()
root.geometry("%dx%d+0+0" % (w, h))
for i in range(len(entities) + 1):
img = ImageTk.PhotoImage(Image.open(path))
panel = tkinter.Label(root, image = img)
panel.grid(row = i, column = i)
这确实显示了第一张图片,但只是移动它,而不是创建新图像。我该如何解决这个问题?
答案 0 :(得分:1)
我使用了一个列表来存储图像,然后通过将我的代码更改为:
来单独处理每个图像entity_images = []
for i in range(len(entities)):
img = ImageTk.PhotoImage(Image.open(path))
entity_images.append(img)
panel = tkinter.Label(root, image = entity_images[i])
panel.grid(row = i, column = i)