не удается выбрать ошибку объектов _tkinter.tkapp при попытке создать несколько экземпляров одного класса - PullRequest
0 голосов
/ 28 мая 2018

Я очень расстраиваюсь из-за этой проблемы.У меня было это раньше, и я исправил это, но он вернулся снова, когда я что-то изменил в своем коде.Чтобы быть точным, я пытаюсь создать несколько экземпляров класса, когда я нажимаю кнопку.Я использую Python 3.6 с Tkinter.Когда я впервые писал свой класс, я использовал прямоугольник (созданный с помощью метода create_rectangle) для визуального представления.После того, как мой класс вел себя так, как я хотел, я хотел использовать фотографию, чтобы появиться на моем холсте вместо прямоугольника.Поскольку заголовок был предложен, моя главная ошибка - «не могу выбрать объекты _tkinter.tkapp», и до этого было много ошибок в Deepcopy.Это полная ошибка https://pastebin.com/nAQifmnA

Перед использованием изображения это исправление сработало Не могу засечь объекты _tkinter.tkapp

Я забыл упомянуть, для изображения яЯ использую класс PhotoImage.

Здесь я пытаюсь создать больше экземпляров класса.Этот метод находится внутри самого класса, может быть в этом проблема?Я пробовал разные вещи, но они не работают.

def newAdd():
      global And_list
      test=AND(10,10)
      And_list.append(deepcopy(test))
      And_list =listRecord()

1 Ответ

0 голосов
/ 28 мая 2018

Виджеты Tkinter и элементы canvas - это просто тонкие обертки вокруг объектов, которые существуют во встроенном интерпретаторе tcl.Вы не можете использовать deepcopy или pickle для создания нескольких экземпляров, потому что эти команды ничего не знают о встроенном интерпретаторе tcl.Если вам нужно несколько экземпляров, вы должны вызвать соответствующие функции tkinter.

...