Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.27;
Скачать: CL | DM;

Вниз

TreeView.Item   Найти похожие ветки 

 
Димон1   (2003-02-18 10:39) [0]

Заполняю TreeView. К каждому узлу прикрепляю ссылку на record, созданную с помощью New.

...
while not EOF do
begin
New(obj);
obj^.Obj_id := FieldByName("Obj_ID").AsInteger;
obj^.Obj_Name := FieldByName("Obj_Name").AsString;
obj^.Obj_Type := FieldByName("Obj_Type").AsInteger;
obj^.Obj_ParentID := ParentID;
TreeView.Items.AddChildObject(Node, obj^.Obj_Name, obj);
Next;
end;
...


ВОПРОС: При выполненини TreeView.Clear освобождается ли память от этих объектов?

Если нет: Нужно ли мне самому освобождать память? Как лучше это сделать?


 
Романов Р.В. ©   (2003-02-18 10:49) [1]

Память нужно освобождать самому например в обработчике TreeView.OnDeletion


 
jack128 ©   (2003-02-18 10:50) [2]

Нет, память не освобождается, этим нужно заниматься самому
for i := 0 to TreeView1.Items.Count - 1 do
Dispose(PObj(TreeView1.Items[i].Data));


 
mrcat ©   (2003-02-18 10:50) [3]

Димон1 (18.02.03 10:39)

>> При выполненини TreeView.Clear освобождается ли память от этих объектов?

нет.

>> Нужно ли мне самому освобождать память
да.

>>Как лучше это сделать?
Dispose F1





 
Димон1   (2003-02-18 11:12) [4]

я сделал так:

procedure TfrmMain.TreeViewDeletion(Sender: TObject; Node: TTreeNode);
begin
if Node.Data <> nil then
begin
Dispose(PObj(Node.Data));
Node.Data := nil;
end;
end;


Всем спасибо!



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

Текущий архив: 2003.02.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
1-87488
ramzes112
2003-02-15 20:44
2003.02.27
Запуск одной копии приложения и передача параметров...


1-87386
Serghei
2003-02-17 15:26
2003.02.27
HasProperty ???


1-87460
Николай В.
2003-02-18 15:26
2003.02.27
DKLib (PGP)


1-87428
BOA_KAA
2003-02-18 13:58
2003.02.27
Resize для формы


7-87722
Масим
2002-12-23 20:46
2003.02.27
как включить спейкер программно?