Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Ursprungsform schließen


Grafix - Sa 24.04.10 12:58
Titel: Ursprungsform schließen
Moin,

wenn ich in Form2 den befehl Form1.Close; ausführe, schließen sich dummerweise beide... Ich habs versucht mit Form1.Visible := False;, aber das ist auch nichts gescheites, erstens des Programmierstils wegen und außerdem kann ich das Programm dann nicht mehr über den X Button oben in der Leiste schließen - da Form1 ja immernoch ausgeführt wird :shock:
Wo liegt der Fehler?
Thx


elundril - Sa 24.04.10 13:16

Weil dein Programm ein Hauptfenster braucht. Wenn du das Hauptfenster schließt, dann schließt sich das ganze Programm. Lösung des Problems wäre das du ein anderes Fenster zum Hauptfenster machst, oder dein Hauptfenster mit Form1.Hide; nur versteckst und sobald du es wieder brauchst mit Form1.Show; wieder herholst.

lg elundril


Grafix - Sa 24.04.10 13:22

Hm, das Problem bei Form1.Hide; ist anscheinend das selbe wie bei Visible... wenn Form2 geschlossen wird, bleibt Form1 im Hintergrund aktiv...
Wie kann ich ein anderes Form zur Hauptform machen??


Gausi - Sa 24.04.10 13:47

user profile iconGrafix hat folgendes geschrieben Zum zitierten Posting springen:
außerdem kann ich das Programm dann nicht mehr über den X Button oben in der Leiste schließen - da Form1 ja immernoch ausgeführt wird :shock:

Schreib doch einfach ins OnClose-Event der zweiten Form ein Form1.Close; rein, dann sollte sich das Programm beenden. :)


Grafix - Sa 24.04.10 13:54

So einfach wie genial - und es funktioniert =) Danke!