为什么移动我的图像而不是创建多个图像

时间:2017-05-11 09:48:32

标签: python tkinter

我正在尝试使用以下方法在我新打开的窗口上的几个位置显示相同的图像:

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)

这确实显示了第一张图片,但只是移动它,而不是创建新图像。我该如何解决这个问题?

1 个答案:

答案 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)