Einzelnen Beitrag anzeigen

BerndS

Registriert seit: 8. Mär 2006
Ort: Jüterbog
480 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Form soll sich selbst zerstören

  Alt 4. Nov 2022, 14:13
Die Selbstzerstörung besser so:
Delphi-Quellcode:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action := caFree;
end;
Und um herauszufinden, ob das Form2 existiert wäre es besser dieses in Screen.Forms zu suchen.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  F: TForm;
  I: Integer;
begin
  for I := 0 to Screen.FormCount - 1 do
  begin
    F := Screen.Forms[I];
    if F is TFrom2 then
    begin
      ShowMessage('Form 2 exists, opening...');
      F.Visible:=true;
      F.BringToFront;
      Exit;
    end;
  end;
  ShowMessage('Form 2 does not exist, creating...');
  F:=TForm2.Create(self);
  F.Visible:=true;
  F.BringToFront;
end;
nur hingetippt, nicht getestet!

Die Variable Form2 würde ich löschen.
Bernd
  Mit Zitat antworten Zitat