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

Освобождение памяти   Найти похожие ветки 

← →
slavon   (2008-02-03 15:11) [0]

Доброго дня, Мастера! Мне требуется кое-что уточнить.
В real-time делаю: Panel1 := TPanel.Create(nil);
Создаю на ней кучу всякого добра:
<newComponent> := <TComponent>.Create(Panel1);
Достаточно ли после этого всего одной строчки: Panel1.Free;?
Пока писАл, возник второй вопрос:
Если разбросать все эти новые компоненты по разным Parent"ам:
<newComponent>.Parent := <otherComponent>;
удалить всё можно будет, введя только: Panel1.Free;?


← →
DVM ©   (2008-02-03 15:17) [1]


> В real-time делаю: Panel1 := TPanel.Create(nil);

Ты хотел сказать в RUN-TIME?


> Достаточно ли после этого всего одной строчки: Panel1.Free;
> ?

Да. Только не забудь, что саму твою панель надо уничтожить явно, т.к. при ее создании Owner у тебя nil


> Если разбросать все эти новые компоненты по разным Parent"ам:
>
> <newComponent>.Parent := <otherComponent>;
> удалить всё можно будет, введя только: Panel1.Free;?


За удаление отвечает Owner если он есть. Parent тут не причем.


← →
Leonid Troyanovsky ©   (2008-02-03 15:22) [2]


> DVM ©   (03.02.08 15:17) [1]

> За удаление отвечает Owner если он есть. Parent тут не причем.

Причем, если он есть.

--
Regards, LVT.


← →
slavon   (2008-02-03 15:25) [3]

Ура. Спасибо, тем кто откликнулся.


← →
DVM ©   (2008-02-03 15:41) [4]


> Причем, если он есть.

Я про его код. Он же Parent - ов вроде уничтожать не собирался.


← →
Anatoly Podgoretsky ©   (2008-02-03 16:52) [5]

От добра зависит.


← →
Григорьев Антон ©   (2008-02-03 20:14) [6]


> DVM ©   (03.02.08 15:17) [1]
> За удаление отвечает Owner если он есть. Parent тут не причем.

Parent тоже уничтожает компоненты, для которых он Parent. Так что компонент может быть уничтожен как при уничтожении Parent"а, так и при уничтожении Owner"а, т.е. Parent не совсем не при чём.


← →
slavon   (2008-02-04 00:51) [7]

Ага. Понятно. Интересные тонкости. Я поясню: у меня во время работы программы нужно изменить состав и св-ва компонентов, созданных на Panel1. Думаю, будет проще всё снести и заново загрузить. Потому они все на панели. Спасибо.



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

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



Память: 0.46 MB
Время: 0.012 c
2-1202528961
Dmitry S
2008-02-09 06:49
2008.03.02
освобождение памяти дин. массива


2-1202132846
VAD*Anti Gopn!k
2008-02-04 16:47
2008.03.02
Rich edit и картинки.


2-1202575958
88Lion88
2008-02-09 19:52
2008.03.02
Обращение к ячеке Excel delphi


2-1202201114
DimOk
2008-02-05 11:45
2008.03.02
Не компилируется Project


15-1201082732
Галинка
2008-01-23 13:05
2008.03.02
А как вы тестируете свои шедевры?




   Наверх