Ich mache eine Textverarbeitung, um Java zu üben, und ich möchte es so, dass, wenn der Benutzer versucht, die Anwendung zu schließen, ein JFrame auftauchen wird, um Änderungen zu speichern.setDefaultCloseOperation zeigt stattdessen einen JFrame
Ich habe über setDefaultCloseOperation() nachgedacht, aber ich hatte bisher wenig Glück. Ich würde es auch gerne sehen, wenn der Benutzer, wenn möglich, auch auf das "X" oben rechts im Fenster klickt.
1) ITYM 'frame.addWindowListener (new Window() {' (sonst ist es ein Übersetzungsfehler) 2) Die JRE wird nicht enden, da der EDT läuft noch. Hier ist einer der seltenen Fälle, in denen das Aufrufen von 'System.exit (0)' notwendig sein könnte. –
@AndrewThompson was würden Sie vorschlagen, der sicherste Weg zu sein, eine Anwendung anstelle von System.exit (0) zu schließen; ? – Andrei0427
Nun, Sie könnten zuerst die laufenden Threads betrachten und prüfen, ob nur der EDT noch läuft. In diesem Fall wäre es sehr sicher, die JVM mit 'System.exit (0)' zu beenden. Aber es gibt eine bessere Lösung hier, siehe meine Antwort .. –