Главная страница
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.017 c
2-1202118155
mephisto
2008-02-04 12:42
2008.03.02
Прочитать ячейку в памяти


15-1201424991
Kostafey
2008-01-27 12:09
2008.03.02
С днем рождения ! 27 января


2-1202065033
San1712
2008-02-03 21:57
2008.03.02
Как узнать начальный и последний адрес программы в памяти ?


2-1202023218
Alex_Storm
2008-02-03 10:20
2008.03.02
DataTimePicker


2-1202302113
IntruderLab
2008-02-06 15:48
2008.03.02
Параметры при запуске