我想模擬一個美國的交通燈,在矩形上有3個圓圈,都在一組畫布上繪製。模擬應該通過按照以下順序改變每2秒顯示哪個光源來鏡像「動畫」:綠色>黃色>紅色>綠色等永遠。您可以在創建後更改Python Canvas對象的屬性嗎?
我能想到的唯一方法是通過使用canvas.move(),canvas.after(),canvas.update()模式來移動填充的橢圓對象,以一次疊加一個未填充的圓。我已經掌握了邏輯,以正確的速度和正確的順序移動一個圓圈。事情是,我只是實例化一個充滿「綠色」的圓圈,但我無法使用這種方法將其更改爲「黃色」或「紅色」。對於canvas.delete(「填充」)而言,似乎很愚蠢,並且每隔2秒在一個新的地方重新繪製一個不同的填充,因爲這對於這樣一個簡單的程序來說很重要。
問題1:有沒有一種方法可以使用某種方法或其他方法隨意更改填充的Canvas對象的fill
選項?
問題2:我是否錯誤地處理了這種情況?有沒有更好的方法來模擬這個?
謝謝!我該如何稱呼它?像,我打電話給什麼對象?我得到的只是一個畫布'self.canvas',並且在對象''填充''上有一個標籤。那足夠的信息了嗎?我嘗試過'self.canvas [「filled」]'但這似乎不起作用。我更像一個Ruby人,所以在Python中訪問屬性對我來說是新的。 –
謝謝!那太完美了! –