Testing, if form exists/de

From Free Pascal wiki
Revision as of 16:53, 31 October 2017 by Mai (talk | contribs)

Deutsch (de) English (en) français (fr)

Manchmal kann eine Form von mehreren Stellen in einem Programm gestartet werden. Wenn sie bereits vorhanden ist, muss sie nur nach vorn gebracht werden. Wenn nicht, muss sie erstellt werden.

Diese Methode wird nur benötigt, wenn die Form nicht automatisch erstellt wird (es sollte aber unter Hauptmenü -> Projekt -> Formulare zu finden sein).

Der einfachste Weg ist:

if (MyForm = nil) then Application.CreateForm(TMyForm, MyForm);
MyForm.Show;

Verwenden Sie Closeaction: = caFree in OnClose-Ereignis des Formulars z.B so:

procedure TMyForm.Formclose(Sender: Tobject; var Closeaction: Tcloseaction);
begin
  CloseAction := caFree;
  MyForm := nil;
End;


--Michl 23:26, 10 May 2014 (CEST)