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

как убить все объекты одним ударом   Найти похожие ветки 

← →
redlord   (2004-09-10 15:16) [0]

всем привет
народ подскажите как убить все обекты если не известно сколько
их живо на момент удаления
ниже приведен код создания обектов :
type
Tscan = class(tobject)
...
...
end;
----------

var
 Form1: TForm1;
 Scan:array[1..65534]of Tscan;
implementation
{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var n:integer;
begin
for n:=1 to 1000 do
scan[n]:=tscan.Create(form1);
end;


← →
Digitman ©   (2004-09-10 15:21) [1]


> если не известно


сделай так чтобы было "известно" .. и не задавайся глупыми вопросами ... все в твоих руках !


← →
HeKTO   (2004-09-10 15:24) [2]

form1.close; :))))) и все мертвы.....


← →
Рамиль ©   (2004-09-10 15:47) [3]

можно пройтись по Form1.Components и освободить все объекты с именем класса Tscan


← →
redlord   (2004-09-10 15:48) [4]

значит нужно все мои обекты повесить на вспомогательный объект
а потом его убить
а еще это какнибуть можно реализовать ??


← →
PVOzerski ©   (2004-09-10 15:50) [5]

Если все объекты - наследники tComponent, можно воспользоваться их свойством Owner. Скажем, при создании делаем один какой-то компонент их owner"ом (или owner"ом их Owner"ов и т.д.). Тогда при "убийстве" этого "всеобщего" owner"а он "утянет за собой" всех. Естественно, способ не универсален.


← →
icWasya ©   (2004-09-10 16:00) [6]

TObjectList+F1


← →
TUser ©   (2004-09-10 16:13) [7]

Можно также в цикле написать free и защитить его try ... except"ом. Еще лучше - все Free заменить на FreeAndNil и проверять на nil перед вызовом этой ф-ции.



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

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



Память: 0.46 MB
Время: 0.021 c
3-1093863655
Russko
2004-08-30 15:00
2004.09.26
Проблема с точкой и запятой.


1-1094054066
bloodman
2004-09-01 19:54
2004.09.26
Есть ли функция для удаления 1 элемента из динамического масива?


3-1093660094
mr.dfox
2004-08-28 06:28
2004.09.26
Ввод времени в DBGrid.


14-1094541867
Denis
2004-09-07 11:24
2004.09.26
Можно ли дома отремонтировать монитор?


4-1092386897
midavik
2004-08-13 12:48
2004.09.26
Включение сетевой карты




   Наверх