我正在尝试使用python学习基本动画, 当我尝试将图像插入到tkinter画布中时,看不到任何错误,但是图像也没有。
from tkinter import *
import time
from PIL import *
def initiate():
canvas1 = Canvas(root, width=800, height=600)
canvas1.pack(expand=YES, fill=BOTH)
im = PhotoImage(file='flag.gif', height=100, width=100)
canvas1.create_polygon(10, 10, 0, 20, 20, 20, fill='white')
print("hi")
canvas1.create_image(100, 100, image=im)
print('bye')
root.update()
root = Tk()
initiate()
root.mainloop()
成功创建了多边形,但未显示图像。 请告诉我我在这里做错了。 我需要将图像放在画布中,而不是在标签中。
答案 0 :(得分:0)
应该可以:
from tkinter import *
def initiate():
canvas1 = Canvas(root, width=800, height=600)
canvas1.pack(expand=YES, fill=BOTH)
im = PhotoImage(file='flag.gif', height=100, width=200)
canvas1.create_polygon(10, 10, 0, 20, 20, 20, fill='white')
label = Label(image=im)
label.image = im
print("hi")
canvas1.create_image(100, 100, image=im)
print('bye')
root.update()
root = Tk()
initiate()
root.mainloop()
输出:
有关详细说明,请参见Why do my Tkinter images not appear?。