Что делает canvas.delete ()? - PullRequest
       3

Что делает canvas.delete ()?

0 голосов
/ 21 января 2019

Я использую canvas.create_rectangle(), чтобы нарисовать прямоугольник и назначить нарисованный элемент для specifier.Но после удаления элемента с помощью canvas.delete(specifier) я все равно могу успешно запустить canvas.delete(specifier), не вызывая ошибки.Могу я узнать причину этого?

1 Ответ

0 голосов
/ 21 января 2019

Нет способа действительно узнать почему? , поскольку это нигде не задокументировано (насколько я знаю).

Это просто дизайнерское решение, принятое авторами tkinter: т.е. это не считается ошибкой, если ни один элемент не соответствует. Я предполагаю, что поскольку цель состоит в том, чтобы избавиться от чего-либо, не важно, было ли это там заранее или нет, не важно.

Если зная, имеет ли это значение или нет, имеет значение в вашей ситуации, вы можете сначала использовать метод Canvas.find_all() и посмотреть, является ли список, который он возвращает, пустым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...