나는 캔버스에 그려진 사각형에 3 개의 원으로 구성된 미국의 신호등을 시뮬레이션하려고합니다. 시뮬레이션은 2 초마다 표시되는 빛을 녹색> 노란색> 빨간색> 녹색 등의 순서로 변경하여 "애니메이션"을 반영합니다.생성 후 Python Canvas 객체의 속성을 변경할 수 있습니까?
내가 할 수있는 유일한 방법은 canvas.move(), canvas.after(), canvas.update() 패턴을 사용하여 채워진 타원형 객체를 이동하여 한 번에 하나의 채워지지 않은 원을 겹치게하는 것입니다. . 적절한 속도와 올바른 순서로 원을 움직이기 위해 로직을 다운 시켰습니다. 문제는 "녹색"으로 채워진 원을 인스턴스화하는 것이지만이 방법을 사용하여 "황색"또는 "빨간색"으로 변경할 수는 없습니다. canvas.delete ("filled")를 가지고 2 초마다 다른 채우기로 다시 그려야하는 것은 어리석은 일입니다. 왜냐하면 그렇게 간단한 프로그램에서해야 할 일이 많기 때문입니다.
질문 1 : 내 채워진 캔버스 개체에 대해 fill
옵션을 일부 방법이나 다른 방법으로 변경할 수 있습니까?
질문 2 :이 시나리오에 잘못 접근하고 있습니까? 이것을 시뮬레이션하는 더 좋은 방법이 있습니까?
감사합니다! 내가 정확히 그것을 어떻게 불러야합니까? 어떤 대상을 내가 부르는거야? 내가 가진 것은 캔버스'self.canvas'와 객체''filled "'에 대한 태그입니다. 충분한 정보인가? 'self.canvas [ "filled"]'시도했지만 작동하지 않는 것 같습니다. 저는 루비 (Ruby) 녀석입니다. 그래서 파이썬에서 속성에 접근하는 것은 저에게 새로운 것입니다. –
고마워요! 그게 완벽 했어! –