Как изменить цвет заливки на многоугольнике после его создания в экземпляре класса? - PullRequest
1 голос
/ 24 марта 2019

Я пытаюсь запрограммировать игру жизни Конвея.Я использую холст в tkinter, чтобы показать различных существ, и я создал класс, который рисует существ при создании экземпляра.Моя проблема в том, что я не знаю, как изменить параметры, такие как цвет заливки на объектах после того, как они были созданы.

Я пробовал разные вещи, как предложено в различных руководствах, таких как: Canvas.itemconfig ("Creature"", fill =" green ")

где" Creature "- это тег.Кроме того, я попытался использовать уникальный целочисленный идентификатор, который я записал при istantiation как идентификатор и строку (вместо «Creature» выше.

Я всегда получаю эту ошибку: TypeError: itemconfigure () отсутствует 1 обязательный позиционный аргумент: 'tagOrId'

class Critter():


     def __init__(self, parent, x, y, plusx, plusy):

        self.name = parent.create_oval(x, y, x + plusx, y + plusy, tags=("Creature"))
        self.age = 0
        self.state = 0
        self.dad = parent

        self.bringtolife()

    def bringtolife(self):
        self.setstate(1)
        Canvas.itemconfig("Creature", fill = "green")

Когда я создаю экземпляр на холсте, он рисует круг, но не меняет цвет заливки на зеленый. Он меняет состояние сОт 0 до 1, когда вызывается тот или иной оператор.

...