Когда я рисую прямоугольник в глобальной области видимости:
c = Canvas(width=IMAGE_WIDTH, height=IMAGE_HEIGHT, bg='black')
c.create_rectangle([100, 100, 110, 110], fill='white')
c.pack()
root = Tk()
и следую этому, рисуя несколько прямоугольников в цикле
class gDrawer :
def __init__(self) :
self.rect_array = []
self.x = 0
self.y = 0
def incr_counter(self,c,event=None):
one_pixel_loc = [self.x, self.y, self.x+5, self.y+5]
self.rect_array.append(c.create_rectangle(one_pixel_loc, fill='white'))
self.x += 1
gd = gDrawer()
for xx in range(100) :
print xx
gd.incr_counter(c)
root.mainloop()
Один нарисованный прямоугольник остается на холсте, поканарисованный петлей прямоугольник перемещается, а не создает след прямоугольников.Я хотел бы нарисовать след прямоугольников, а не движущихся, так что здесь происходит?