考虑:
from Tkinter import *
a = Tk()
canvas = Canvas(a, width = 500, height = 500)
canvas.pack()
canvas.create_rectangle(0, 0, 100, 100)
我们如何删除已创建的矩形?
这是指我正在创建的游戏。这是一个简单的游戏,如果球击中了障碍物,障碍物就会消失。但是,如果我做这样的事情:
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
没用 当球击中时如何删除该块?
将分配create_rectangle()
给变量,然后调用canvas.delete()
该变量:
from Tkinter import *
a = Tk()
canvas = Canvas(a, width = 500, height = 500)
canvas.pack()
myrect = canvas.create_rectangle(0,0,100,100)
canvas.delete(myrect) #Deletes the rectangle
删除前的窗口:
删除后的窗口:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句