Bei
MDI kann es ja viele Fenster (=Formulare) einer einzigen Klasse geben.
Damit man keine Fehler macht sollte man bei
MDI-Formularen folgende Zeile auskommentieren:
Delphi-Quellcode:
var // auskommentieren !!!
Form2 : TForm2; // auskommentieren !!!
Bei einem
MDI-Cild Formular bedeutet ja das Schliesen gleichzeitig den Tod des Formulars.
Darum sollte sich das Formular selber kümmern.
Daher muss man sich im Event
OnClose einklinken:
Delphi-Quellcode:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if FormStyle = fsMDIChild then
Action := caFree;
end;
Die Anmerkung mit FreeAndNil sind bei
MDI-Formularen nicht zutreffend. Man braucht kein FreeAndNil weil es gar keine Variable gibt/geben darf.