我正在尝试使用PIL在Tkinter画布中嵌入图像,并且由于某种原因它没有显示.有任何想法吗?
没有错误或警告.只是一个空白的Tk窗口.
我的代码:
import Tkinter
from PIL import ImageTk, Image
class image_manip(Tkinter.Tk):
def __init__(self,parent):
Tkinter.Tk.__init__(self,parent)
self.ImbImage = Tkinter.Canvas(self)
self.ImbImage.pack()
i = ImageTk.PhotoImage(Image.open('test.png'))
self.ImbImage.create_image(0, 0, image=i)
def run():
image_manip(None).mainloop()
if __name__ == "__main__":
run()
解决方法:
我的猜测是图像被垃圾收集了.尝试保存对“i”的引用(例如:self.image = i)