Aber wir driften vom Thema ab, denn die Fehlermeldung kommt nicht vom Versuch die Form zu
schliessen, sondern vom Versuch die
modal anzuzeigen.
Die Fehlermeldung ist doch sehr eindeutig:
Zitat:
TCustomForm.ShowModal
for OfflineForm:TOfflineForm
impossible, because already visible (hint for designer forms: set Visible
property to false
) already modal.)
und da gibt es auch noch einen Tip, was man kontrollieren, bzw. gewährleisten sollte (Im
OI OfflineForm.Visible = False
setzen)
Das paßt aber nicht damit zusammen, was AlexII im Eingangsposting meint:
ich versuche wie folgt ein modales Fenster zu schließen:
Delphi-Quellcode:
procedure TMainForm.SetAppOnline();
begin
OfflineForm.Visible := False;
//oder
OfflineForm.ModalResult := mrCancel;
//oder
OfflineForm.ModalResult := mrOK;
end;
bekomme aber immer diese Fehlermeldung, siehe Anhang. Wie bekomme ich das modale Fenster aus dem Hauptfenster zu?
Nur um mal mit dieser Mär mit den modalen Forms, die sich angeblich nicht von aussen schliessen lassen, aufzuräumen habe ich hier ein Beispiel-Code
... das problemlos funktioniert.
Aber wie hier und im Nachbar-Thread bereits eingewendet wurde, macht das nicht wirklich Sinn, denn man ruft eine Form doch genau deshalb modal auf, um eine bestimmte Reaktion des Anwenders quasi zu erzwingen: Wenn er z.B. einen Dateinamen auswählen soll, dann kann er das nicht, wenn der Dialog nach 5 Sekunden wieder geschlossen wird. Die Umstände in Alex' Programm sind ja auch bislang streng geheim