Delphi-Quellcode:
procedure TFrmClient1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caNone; // In der CustomForm soll nichts passieren
FrmClient1 := nil; // Meine Form-Variable ist jetzt ungültig
Release; // Ich gebe das Formular selber frei
end;
Genau das gleiche passiert, wenn Du es nur so machst:
Delphi-Quellcode:
procedure TFrmClient1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
Warum denn noch zwei Schritte machen, welche automatisch gemacht werden?
Hat auch den wichtigen Vorteil, dass dies dann auch bei jeder Instanz Deiner Form funktioniert und nicht nur wenn der Zeiger der Instanz auf die globale Variable "FrmClient1" zeigt.
Programmieren ist die Kunst aus Nullen und Einsen etwas sinnvollen zu gestalten.
Der bessere Künstler ist allerdings der Anwender, denn dieser findet Fehler, welche sich der Programmierer nicht vorstellen konnte.