Thema: Delphi Button zerstören?

Einzelnen Beitrag anzeigen

Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Button zerstören?

  Alt 20. Mär 2004, 17:24
Zitat von daywalker-dj-k:
wie müsste ich das ganze lösen, wenn ich einfach in einer schleife einige objekte löschen möchte?
Wenn ButtonX nicht Bestandteil von FButtonArray ist brauchst Du das ganze Zeug mit PostMessage nicht. Dann reicht der folgende
Delphi-Quellcode:
Codeprocedure TForm1.ButtonXClick(Sender : TObject);
var
  iCnt : Integer;
begin
  For iCnt:=Low(FButtonArray) to High(FButtonArray) do
    FreeAndNil(FButtonArray[iCnt]);
end;
Zitat von daywalker-dj-k:
ich habe ja kein array mit den objektnamen und möchte auch keins erstellen. was bedeutet denn das "message.wparam" überhaupt. Muss ich bei FreeAndNil nicht einfach nur den Objektnamen wie "Edit1" einsetzen?
Wenn die Buttons in keinem Array sind, dann musst Du die Buttons geschickt benamen. Dann kannst FindComponentwie folgt nutzen:
Delphi-Quellcode:
procedure TForm1.ButtonXClick(Sender : TObject);
var
  iCnt : Integer;
begin
  For iCnt:=0 to 9 do // wir haben 10 Buttons
    FindComponent('Button'+IntToStr(iCnt)).Free;
end;
Objektnamen sind wie andere Namen auch nur Schall und Rauch. Wichtig ist, dass Du eine gültige Referenz auf das Objekt hast. Über den Namen des Objektes sorgt der Compiler dafür das dem so ist. Ob die Referenz in einer Instanzenvariablen oder in Array oder sonst wo gespeichert ist ist dabei egal.
I come from outer space to save the human race
  Mit Zitat antworten Zitat