Python Tkinter ~ canvas.delete()

Python Tkinter ~ canvas.delete()

如何使用 canvas.delete() 删除 canvas 的特定图像标签? 我应该把 'img' 作为参数还是需要其他东西?

ball = PhotoImage(file='ball.png')
[Class Name and __init__]
self.canvas.delete('img')
self.canvas.create_image(self.getCoordinates()[0], self.getCoordinates()[1], image=ball)

是的,要删除带有标签的项目,首先您需要使用 tag 选项为 tk.Canvas.create_xxxxx(...,tag='item1') 分配标签:

self.canvas.create_image(self.getCoordinates()[0], self.getCoordinates()[1], image=ball, tag='img')

正在创建一个 canvas 对象 returns 一个 ID。您可以将该 ID 传递给 delete 方法。

self.image_id = self.canvas.create_image(...)
...
self.canvas.delete(self.image_id)