Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#19

AW: Wie kann man ein Array leeren?

  Alt 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)
  Mit Zitat antworten Zitat