長方形の色を 1 秒ごとに変更しようとしていますが、何らかの理由で最後の色のみが使用されます。中間のものはまったく使用されません。私はどこで間違っていますか?これが私のコードです-
class app():
def __init__(self):
self.root = Tk()
self.root.minsize(500, 500)
self.root.maxsize(500, 500)
self.counter = 4
self.color = ["red","green","yellow","grey"]
self.mainframe = Canvas(self.root, width=400, height=200)
self.blue = self.mainframe.create_rectangle(20,20,120,60,fill='blue',width=0)
self.mainframe.pack()
Button(self.root,text="press",command=self.click).pack()
self.root.mainloop()
def click(self):
self.root.after(1000,self.__timer)
def __timer(self):
if self.counter > 0:
for i in range(self.counter):
self.mainframe.itemconfigure(self.blue_button,fill=self.color[i])
self.root.after(1000,self.__timer)
self.counter -= 1