Hallo,
ich hab eine Komponentenliste vom Typ TComponentList in der ich zur Laufzeit
erzeugte Komponenten als auch schon zur Designzeit erzeugte Komponenten
eintrage.
Am Ende des Programmes bei OnDestroy der Form will ich alle zur Laufzeit erstellten
Komponenten löschen.
Dafür hab ich folgenden Code:
Delphi-Quellcode:
procedure TMaskForm.FormDestroy(Sender: TObject);
var
i: Integer;
Dummy_Kompo: TComponent;
begin
for i := Pred(Komponentenliste.Count) downto 0 do
begin
//Komponente auslesen
Dummy_Kompo := Komponentenliste.Items[i];
If Assigned(Dummy_Kompo) then
FreeAndNil(Dummy_Kompo);
end;
FreeAndNil(Komponentenliste);
end;
Mit dem Assigned will ich alle Komponenten die beim Design erstellt wurden,
aussieben.
Aber leider bekomm ich immer eine AccessViolation - ich weiss nur nicht warum?
mfg
Helmi
>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<