Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

освобождение объектов в treeview..


_i ©   (2012-02-21 22:23:00) 

к нодам тривью привязаны объекты, можно ли ускорить цикл освобождения объектов дерева не меняя принципиально сам подход к хранению этих объектов? (beginupdate\endupdate вызываю "снаружи" до входа в этот метод)


procedure ClearNode(ANode: TTreeNode);
var
 i: Integer;
begin
 if ANode = nil then
   Exit;
 for i := 0 to ANode.Count - 1 do
 begin
   if ANode.Item[i].Data <> nil then
   begin
     Dispose(ANode.Item[i].Data);
   end;
   if ANode.Item[i].Count > 0 then
     ClearNode(ANode.Item[i]);
 end;
 ANode.DeleteChildren;
end;


istok20   (2012-02-21 23:04:00) [1]


> http://www.delphimaster.ru/cgi-bin/forum.pl?id=1328811083&n=0

в курсе, но то уже кардинальная схема работы с моими данными..


> Твое дело - в обработчике события OnDeletion проделать нужные
> тебе манипуляции с данными, ассоциированными с текущим удалаемым
> узлом.


спасибо, то что надо!)


Сергей М.   (2012-02-21 22:37:00) [2]

А и цикл никакой не нужен - все необходимые циклы уже реализованы в потрохах компонента.

Твое дело - в обработчике события OnDeletion проделать нужные тебе манипуляции с данными, ассоциированными с текущим удалаемым узлом.


sniknik   (2012-02-21 22:28:00) [3]

http://www.delphimaster.ru/cgi-bin/forum.pl?id=1328811083&n=0


Наверх

Титульная страница Поиск, карта сайта Написать письмо