from Tkinter import *
a = Tk()
canvas = Canvas(a, width = 500, height = 500)
canvas.pack()
canvas.create_rectangle(0,0,100,100)
现在我们该如何删除这个已创建的矩形?我们如何删除已经在Tkinter画布中创建的形状?
编辑:
这是参考我创建的游戏。这是一个简单的游戏,如果球击中了方块,方块应该消失。但是,如果我做了这样的事情:
class Block:
def __init__(self,canvas,color):
self.canvas = canvas
self.id = canvas.create_rectangle(10,10,110,20,fill=color)
self.id1 = canvas.create_rectangle(115,10,215,20,fill=color)
self.id2 = canvas.create_rectangle(220,10,320,20,fill=color)
self.id3 = canvas.create_rectangle(325,10,425,20,fill=color)
self.id4 = canvas.create_rectangle(430,10,530,20,fill=color)
self.id5 = canvas.create_rectangle(100,150,200,160,fill=color)
self.id6 = canvas.create_rectangle(350,150,450,160,fill=color)
self.x = 0
然后:
def hit_block(self,pos):
block_pos = self.canvas.coords(self.block.id)
List = [block_pos]
for i in List:
if pos[0] >= i[0] and pos[2] <= i[2]:
if pos[1] >= i[1] and pos[1] <= i[3]:
canvas.delete(block.id)
self.score()
global a
a += 1
return True
return False
它不工作。所以当球击中它时,你能帮我删除这个区块吗?
http://effbot.org/tkinterbook/canvas.htm#Tkinter.Canvas.delete-method – atlasologist
您是否阅读过文档?如何做到这一点是明确记录。如果不是,为什么不呢?如果是这样,你不明白它的一部分?如果是这种情况,告诉我们你不明白的部分,以便我们可以集中我们的帮助。 –
这个问题似乎是脱离主题,因为它可以通过阅读官方文档 – M4rtini