Объясните, пожалуйста, чего я неправильно делаю. Простейший пример: Запускаю, после удаления линий память не освобождается. ##################### from Tkinter import * from Canvas import Line import gc class My(Frame): def __init__(self, parent): Frame.__init__(self, parent) self.cv=Canvas(self, width=400, height=300) self.cv.pack() Button(self, command=self.cleanall, text="clean").pack(fill=X) Button(self, command=self.addline, text="add").pack(fill=X) self.pack() self.x=10 self.y=10 self.l=[] def addline(self): for j in range(1000): self.l.append(Line(self.cv, self.x, self.y, self.x+200, self.y, tag="line")) self.y=self.y+20 def cleanall(self): map(self.cv.delete, self.cv.find_withtag("line")) self.x=10 self.y=10 for j in self.l: del(j) gc.collect() root=Tk() gc.enable() a=My(root) root.mainloop() ############################
Ответ на:
комментарий
от kosmonavt
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Tkinter (theme) (2015)
- Форум Tkinter - не пойму в какой момент виджет был размещен в окне (2023)
- Форум Как в Python & tkinter при использовании MVC создать главное окно программы? (2017)
- Форум tkinter виджет Frame (2014)
- Форум Текстовое поле Tkinter (2013)
- Форум Tkinter - overrideredirect (2005)
- Форум python tkinter вопрос по canvas (2009)
- Форум Python (2008)
- Форум Сконвертить данные класса Python3 в строку INSERT для Postgree (2020)
- Форум Вытащить import'ы из .py файла (2018)