Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 2, 2011 21:04:22

idec
От:
Зарегистрирован: 2011-12-02
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Очищение объекта Canvas

Доброго времени суток.
делаю так:

def sc_changed(self):
canvas.delete(ALL)
circle = canvas.create_oval(100-scale.get(),100-scale.get(),
scale.get(),scale.get(), fill=“blue”)

когда двигаешь скролл окружность применяет размер установленный на скролле.
каждое изменение размера рефрешит прорисовку окружности.

но проблема состоит в том что мне надо очистить объект не параметром ALL для всего канваса, а только объект circle
т.е canvas.delete(circle)
но при попытке это сделать выползает ошибка что перед удалением объекта стоит его создать.
есть ли какие другие способы перерисовки или может с delete надо правильней поступить?



Офлайн

#2 Дек. 2, 2011 21:24:01

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Очищение объекта Canvas

а если запоминать предъидущий scale и рисовать еще один овал со старыми координатами - но с цветом фона?

Офлайн

#3 Дек. 3, 2011 08:46:39

sp3
От:
Зарегистрирован: 2010-01-12
Сообщения: 405
Репутация: +  18  -
Профиль   Отправить e-mail  

Очищение объекта Canvas

    circle = None
def sc_changed(self):
if self.circle:
canvas.delete(self.circle)
self.circle = canvas.create_oval(100-scale.get(),100-scale.get(),
scale.get(),scale.get(), fill="blue")
мжт так?



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version