Ich möchte eine Methode aufrufen, confirmExit()
wenn auf die rote Schaltfläche zum Schließen der Titelleiste eines JFrames geklickt wird.
Wie kann ich dieses Ereignis erfassen?
Ich möchte auch verhindern, dass das Fenster geschlossen wird, wenn der Benutzer nicht fortfährt.
java
swing
jframe
windowlistener
Alxcyl
quelle
quelle
implements WindowListener
damit dieser Code funktioniert? Wenn ja, könnte es gut sein, dies in die Antwort aufzunehmen. Ansonsten ist dies eine elegante Lösung.funktioniert auch. Erstellen Sie zuerst einen JFrame mit dem Namen frame und fügen Sie dann diesen Code darunter hinzu.
quelle
confirmExit()
Methode nicht so aus, wie es das OP möchteconfirmExit()
wenn [das X] angeklickt wird." Und der vorherige Kommentar hat nichts mit OQ zu tun.Dies kann funktionieren:
Quelle: https://alvinalexander.com/java/jdialog-close-closing-event
quelle
Dies ist, was ich als Menüoption gesetzt habe, wo ich eine Schaltfläche auf a gemacht habe
JFrame
, um eine andere anzuzeigenJFrame
. Ich wollte, dass nur der neue Rahmen sichtbar ist und nicht der dahinter liegende. Ich habe zuerst den ersten verstecktJFrame
, während der neue sichtbar wurde. Nach dem Schließen des neuen habeJFrame
ich es entsorgt, gefolgt von einer Aktion, das alte wieder sichtbar zu machen.Hinweis: Der folgende Code erweitert Ravindas Antwort und
ng
ist einJButton
:quelle
Versuche dies:
Es wird klappen.
quelle