Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.02;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.023 c
15-1201450136
Kerk
2008-01-27 19:08
2008.03.02
Посоветуйте файрволл


2-1202118155
mephisto
2008-02-04 12:42
2008.03.02
Прочитать ячейку в памяти


3-1191570968
alsov
2007-10-05 11:56
2008.03.02
ODAC и TNSNAME


8-1174354813
DDDeN
2007-03-20 04:40
2008.03.02
Передать аудио-поток на IceCast


2-1201985154
Бэтман
2008-02-02 23:45
2008.03.02
edit