Denne artikkelen viser deg hvordan du lukker et vindu i Java. Å lukke et vindu er mye lettere ved å bruke Swings
JFrame
men det er også mulig å bruke AWT -er
Ramme
Trinn
Metode 1 av 2: Bruke javax.swing. JFrame
Trinn 1. Skaff en forekomst av a
JFrame
eller opprett en ny.
Trinn 2. Angi standard lukkeoperasjon
Standard lukkeoperasjon er angitt ved hjelp av setter -metoden inne i
JFrame
klasse
setDefaultCloseOperation
som bestemmer hva som skjer når du klikker på lukkeknappen og tar følgende parametere:
-
WindowConstants. EXIT_ON_CLOSE
-
WindowConstants. DISPOSE_ON_CLOSE
-
WindowConstants. HIDE_ON_CLOSE
HIDE_ON_CLOSE
og
DISPOSE_ON_CLOSE
- er at sistnevnte frigjør alle ressursene som brukes av rammen og dens komponenter.
-
WindowConstants. DO_NOTHING_ON_CLOSE
WindowListener
til rammen og overordnet
vinduLukking
metode. Eksempel på den tilpassede lukkeoperasjonen:
frame.setDefaultCloseOperation (WindowConstants. DO_NOTHING_ON_CLOSE); frame.addWindowListener (nytt WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Be om bekreftelse før du avslutter programmet. int option = JOptionPane.showConfirmDialog (ramme, "Er du sikker på at du vil lukke programmet?", "Lukk bekreftelse", JOptionPane. YES_NO_OPTION, JOptionPane. QUESTION_MESSAGE); if (option == JOptionPane. YES_OPTION) {System.exit (0);}}});
Metode 2 av 2: Bruke java.awt. Frame
Trinn 1. Skaff en forekomst av a
Ramme
eller opprett en ny.
Trinn 2. Legg til vinduslytter
Anrop
addWindowListener
metode på forekomsten. Det nødvendige argumentet er
WindowListener
. Du kan enten implementere hver metode i
WindowListener
grensesnitt eller overstyr bare metodene du trenger fra
WindowAdapter
klasse.
Trinn 3. Håndter vinduslukking
Implementere
vinduLukking
metode fra
WindowListener
grensesnitt eller overstyr det fra
WindowAdapter
klasse. Det er to måter å lukke et vindu på:
-
Kast vinduet etter at du har klikket på lukkeknappen:
-
Anrop
avhende
metoden inni
vinduLukking
- metode.
frame.addWindowListener (nytt WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Kast vinduet etter at du har klikket på lukkeknappen. dispose ();}});
-
Avslutt programmet etter at du har klikket på lukkeknappen:
-
Anrop
System.exit
metoden inni
vinduLukking
- metode.
frame.addWindowListener (nytt WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Avslutt programmet etter at du har klikket på lukkeknappen. System.exit (0);}});
Tips
- Swing er å foretrekke fremfor AWT siden sistnevnte virkelig er utdatert.
-
Ved hjelp av
WindowAdapter
du trenger ikke å implementere hver eneste metode
WindowListener
- kontrakt forteller oss det, men bare de vi trenger.