Ich habe gerade mal was ausprobiert.
Ich dachte nach einem Form.Close wird kein Code mehr ausgeführt, aber ...
(Form2 ist ein MDIChild)
Delphi-Quellcode:
Procedure TForm2.Button1Click(Sender: TObject);
Begin
Edit1.Text := 'Klick';
Close;
Edit2.Text := 'Hallo';
ShowMessage(Edit2.Text);
End;
Procedure TForm2.FormClose(Sender: TObject; Var Action: TCloseAction);
Begin
Action := caFree;
End;
... ich bekomme die Meldung "Hallo"!
(Ich konnte deinen Bug aber nicht reproduzieren)
Luckie, jetzt ist deine Delphi-Erfahrung gefragt: Wird beim Aufruf von Close so etwas wie ein Thread gestartet, der nach Ausführung des Codes das Form schließt
p.s.: @Bundy, im Loginform hast du auch Code nach dem Close:
Delphi-Quellcode:
if mySQLQuery_versVersionsnummer.Text <>'2.0' then //Versionsnummer
begin
ShowMessage('Version überprüfen...Update anfordern'+#13+#13+'neue Version: '+mySQLQuery_versVersionsnummer.Text);
// Wenn das Hauptform geschlossen wird, werden alle Formulare geschlossen...
Hauptform.Close;
end;
end;
// ... hier versuchst du nochmal zu schließen
close;
end;