Страница 1 из 1

Как уничтожить компонент в RunTime?

Добавлено: 11 авг 2005, 15:31
Alchazar
Во время выполнения программы мне надо уничтожить панели Pan_Prop0 - Pan_Propn которые были созданы в RunTime. Как проверить созданы ли эти панели и если созданы, то как их удалить?
Панели я создаю так:

Код: Выделить всё

Pan:= TPanel.Create(F_GoodsV2.ScrollBox_Prop);
    with Pan do
    begin
      Parent:=F_GoodsV2.ScrollBox_Prop;
      Visible:= true;
      Top:=(i* 41)+1;
      Left:=0;
      Height:=41;
      Width:=365;
      Name:= 'Pan_Prop'+ IntToStr(i);
      Caption:='';
    end;

Добавлено: 14 авг 2005, 20:16
Alchazar
Вот, нашёл решение:

Код: Выделить всё

for i:=1 to ScrollBox_Prop.ComponentCount do
  ScrollBox_Prop.Components[0].Free;

Добавлено: 15 авг 2005, 08:05
LAngel

Код: Выделить всё

if assigned(Pan) then Pan.Free
?

Добавлено: 15 авг 2005, 13:31
Игорь Акопян
Alchazar, твой код убьёт все компоненты, Owner которых ScrollBox_Prop. Если это так и надо - то ок. Или проверяй в этом цикле, например имя...