# Schließen eines Fensters verhindern



## Dr.Kolossos (22. Mrz 2004)

Hallo,

ich habe ein Fenster unter Swing welches ein paar JRadioButtons und ein paar Textfelder enthält. FÜr das Fenster ist ein WindowListener implementiert, welcher im Falle von windowClosing eine exit-Methode aufruft. Wird nun das x in der oberen rechetn Fensterecke betätigt soll in dieser Methode eine Dialogbox mit der Frage "Wirklich beenden" und den Buttons Ja und Nein escheinen, bei Ja funktioniert das prima, bei Nein schließt Java trotzdem das Fenster, und beendet wegen des fehlenden dispose() und System.exit(0) nur nicht den laufenden Prozess.
Meine Frage:
Ist es möglich, zu verhindern das Java das Fenster schließt wenn der user den Nein-Button betätigt?
Danke!!!
Thomas :?:


----------



## bygones (22. Mrz 2004)

```
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
```

dann in der windowlistener methode mit einer JOptionPane.getConfirmation(....) abfragen ob wirklich geschlossen werden soll, wenn 0 (also es wurde auf "Ja" gedrückt) zurückgeliefert wird, nur dann wirklich deine Methode zum Schließen aufrufen


----------



## lhein (22. Mrz 2004)

Ein Blick in die API unter WindowListener bringt uns das gewünschte Ergebnis:



> *windowClosing*
> 
> public void windowClosing(WindowEvent e)
> Invoked when the user attempts to close the window from the window's system menu. If the program does not explicitly hide or dispose the window while processing this event, the window close operation will be cancelled.



Man fange also diesen Event ab und verpasse ihm eine eigene Handling-Routine.

LR


----------



## Dr.Kolossos (22. Mrz 2004)

@deathbyaclown:
Vielen Dank für die schnelle und vor allem hilfreiche Antwort, hänge da seit gestern mittag dran und jetzt läufts einwandfrei. Spitze!
Nochmals danke,
Gruß,
Thomas


----------

