Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

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

AW: 2. Form schliessen Variable=Nil

  Alt 22. Aug 2011, 22:16
So wie du das machst wird die Form TForm2 immer doppelt im Speicher vorhanden sein.

Einmal automatisch beim Programmstart und dann immer wieder beim Aufruf.
Irgendwie nicht logisch.

Also das Formular nicht automatisch erzeugen lassen.

Um TForm2 Modal aufzurufen folgender Code:
Delphi-Quellcode:
Procedure TForm1.OpenForm2Modal( Sender : TObject );
Var
  ModForm2 : TForm2;
begin
  ModForm2 := TForm2.Create( Self );
  Try
    ModForm2.ShowModal;
  Finally
    ModForm2.Free;
  end;
end;
Um die globale Variable "Form2" aus der Unit2 beim Free auf Nil zu setzen folgender Code
Delphi-Quellcode:
procedure TForm2.FormDestroy( Sender : TObject );
begin
  If Form2 = Self then
    Form2 := nil;
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