Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
Delphi 10 Seattle Enterprise
|
AW: Wie kann man ein Array leeren?
22. Jan 2012, 15:37
Hier die Deklaration
Delphi-Quellcode:
uses
Contnrs;
// statt Labels : array[0..100] of TLabel;
type
TForm1 = class( TForm )
..
private
Labels : TList;
end;
..
implementation
..
procedure TForm1.FormCreate( Sender : TObject );
begin
Labels := TObjectList.Create;
end;
procedure TForm1.FormDestroy( Sender : TObject );
begin
// Alle enthaltenen Objekte (hier die Labels) werden automatisch entsorgt
Labels.Free;
end;
procedure TForm1.Button1Click( Sender : TObject );
var
idx : integer;
lbl : TLabel;
begin
for idx := 1 to 100 do
begin
lbl := TLabel.Create( nil ); // keinen Owner angeben!!! Die Labels-Liste kümmert sich um die Freigabe!
lbl.Parent := Self; // oder wer auch immer
lbl.Caption := 'Hallo';
..
Labels.Add( lbl );
end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
|