python在画布上显示动态图_在tkinter画布中显示图像

我在创建画布图像时遇到一些问题,类处理图像的创建,我希望该类创建与我调用它的次数相同的图像。在

我的代码是这样的from tkinter import *

from random import *

canvas_width = 800

canvas_height = 800

master = Tk()

canvas = Canvas(master, width=canvas_width, height=canvas_height, bg="black")

canvas.pack()

def images():

for _ in range(3):

Image_creator().create_image()

class Image_creator:

def create_image(self):

start_x = randint(1, canvas_width//2)

start_y = randint(1, canvas_height//2)

img = PhotoImage(file="pac_inizio.png")

master.img = img

self.image = canvas.create_image(start_x, start_y, anchor=NW, image=img)

images()

mainloop()

实际上这段代码只显示了3个图像中的1个,我认为其他2个画布图像是创建的,但是里面没有图像。

我试着为create button而不是canvas images更改create_image函数,并了解它是否如我所想的那样。

如果你用修改过的函数运行代码,它会显示3个按钮,但只有一个按钮里面有图像。在

^{pr2}$

我觉得这个问题是在图像参考,但不知道怎么解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值