Formluare schließen



  • Hi

    Ich hab ein problem mit dem Schließen meiner beiden Formulare.
    Also wenn ich mich im 2. Formular befinde (Form2) und oben auf das "Windowschließenkreuz" klicke, hab ich das Gefühl das Form 2 zwars beendet ist aber Form1 welches durch Form1->Hide(); versteckt ist noch läuft.
    Natührlich könnt eich auch einfach nen Button in Form2 errstelen wo durch dann beide Forms geschlossen werden, doch die meisten beenden ihr Prog durch das kreuz rechts oben.

    Hoffe ihr könnt mir helfen

    Chrono



  • Form1 wird nicht automatisch mitgeschlossen.

    Du kannst zB im FormDestroy der Form2 das Schließen der Form1 einrichten. Dann klappt es immer, egal ob der User Form2 mit dem Kreuz, im Systemmenü oder via Alt+F4 schließt.

    Wenn Form1 nicht die Hauptform ist, mußt du aber überprüfen, ob der Prozess existiert.



  • Die Methode zum Beenden des ganzen Programms ist: Application->Terminate();



  • Original erstellt von <Omega-X>:
    Du kannst zB im FormDestroy der Form2 das Schließen der Form1 einrichten.

    OnDestroy ist hier ungeeignet, da es erst beim Beenden des Programmes oder beim expliziten Löschen der (Unter-)Form aufgerufen wird, nicht aber beim einfachen Schliessen. OnClose wäre hier das Ereignis der Wahl.

    Scheinbar verfolgt Chrono aber insgesamt einen falschen, oder zumindest unüblichen Ansatz im Programmdesign. Denn üblicherweise werden Programme nun mal nicht beim Schliessen von Unterfenstern beendet, sondern über das Hauptfenster.


Anmelden zum Antworten