Вниз
Скачать: CL | DM;

Вопрос по функции: TTreeView.Items.AddObject(TTreeNode, S, Ptr)   Найти похожие ветки 

← →
Gumbert-Gumbert ©   (2002-05-19 16:23) [0]

Люди, подскажите плиз:
В ТтрииВью есть такая функция:
TTreeView.Items.AddObject(TTreeNode, S, Ptr).
Вопрос: при дестрое дерева освобождается ли память
выделенная под структуру, которую я записал в Ptr (см. описание функции)
И если не освобождается, как можно без гемора её освободить...
Т.е. я конечно понимаю, что можно эту структуру можно сделать списком
и потом по нему пройтись и всё диспозе сделать..., но может можно и
без этого?
Заранее спасибо


← →
Gumbert-Gumbert ©   (2002-05-19 16:38) [1]

Не освобождает..., проверил...
а может кто подскажет, как быстренько осободить память не прибегая к пробеганиям по всем структурам и деланием диспоуза?


← →
Cobalt ©   (2002-05-19 18:08) [2]

Только если ты САМ выделяешь память под свои нужды в отдельной куче (HEAP).


← →
Slym   (2002-05-20 07:34) [3]

AddObject
делает просто Add, а потом Node.Data:=object;

Node.Data - pointer - это указатель, никакой памяти не выделяется

но если
childNode:=TTreeView.Items.AddObject(Node,S,TObject.Create(nil));
то указатель на обект сохраняется только в childNode.Data
и что бы при уничтожении ноды удалять обект нужно:

TreeView.OnDeleting(sender,node,allow)
begin
(Node.Data as TObject).Free;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
1-97224
lak_b
2002-05-20 15:45
2002.05.30
орять Hook


1-97281
vvsystem
2002-05-18 15:47
2002.05.30
Как создать класс по имени класса в рантайме?


6-97379
Olgerd
2002-03-14 19:39
2002.05.30
Как узнать IP клиента?


3-97133
BigError
2002-05-04 13:27
2002.05.30
кэш BDE


1-97233
MaximatorVeter
2002-05-20 15:34
2002.05.30
К коллекционерам! Как создать свою коллекцию?




   Наверх