Denne artikel viser dig, hvordan du lukker et vindue i Java. Det er meget lettere at lukke et vindue ved hjælp af Swings
JFrame
men det kan også gøres ved hjælp af AWT'er
Ramme
Trin
Metode 1 af 2: Brug af javax.swing. JFrame
Trin 1. Få en forekomst af a
JFrame
eller opret en ny.
Trin 2. Angiv standard lukning
Standard lukkeoperation indstilles ved hjælp af setter -metoden inde i
JFrame
klasse
setDefaultCloseOperation
der bestemmer, hvad der sker, når der klikkes på knappen Luk og tager følgende parametre:
-
WindowConstants. EXIT_ON_CLOSE
-
WindowConstants. DISPOSE_ON_CLOSE
-
WindowConstants. HIDE_ON_CLOSE
HIDE_ON_CLOSE
og
DISPOSE_ON_CLOSE
- er, at sidstnævnte frigiver alle de ressourcer, der bruges af rammen og dens komponenter.
-
WindowConstants. DO_NOTHING_ON_CLOSE
WindowListener
til rammen og tilsidesættelse
vindueLukning
metode. Eksempel på brugerdefineret lukkeoperation:
frame.setDefaultCloseOperation (WindowConstants. DO_NOTHING_ON_CLOSE); frame.addWindowListener (nyt WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Bed om bekræftelse, inden programmet afsluttes. int option = JOptionPane.showConfirmDialog (frame, "Er du sikker på, at du vil lukke programmet?", "Bekræft lukning", JOptionPane. YES_NO_OPTION, JOptionPane. QUESTION_MESSAGE); hvis (option == JOptionPane. YES_OPTION) {System.exit (0);}}});
Metode 2 af 2: Brug af java.awt. Frame
Trin 1. Få en forekomst af a
Ramme
eller opret en ny.
Trin 2. Tilføj vindueslytter
Opkald
addWindowListener
metode på instansen. Det krævede argument er
WindowListener
. Du kan enten implementere alle metoder i
WindowListener
grænseflade eller tilsidesæt kun de metoder, du har brug for fra
WindowAdapter
klasse.
Trin 3. Håndter vindueslukningshændelse
Gennemfør
vindueLukning
metode fra
WindowListener
grænseflade eller tilsidesætte det fra
WindowAdapter
klasse. Der er to måder at lukke et vindue på:
-
Bortskaf vinduet, når der er klikket på knappen Luk:
-
Opkald
bortskaffe
metode indeni
vindueLukning
- metode.
frame.addWindowListener (nyt WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Bortskaf vinduet, når der er klikket på lukkeknappen. dispose ();}});
-
Afslut programmet, når der er klikket på knappen Luk:
-
Opkald
System.exit
metode indeni
vindueLukning
- metode.
frame.addWindowListener (nyt WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Afslut programmet, efter at der er klikket på knappen Luk. System.exit (0);}});
Tips
- Swing foretrækkes frem for AWT, da sidstnævnte virkelig er forældet.
-
Ved brug af
WindowAdapter
du behøver ikke at implementere hver eneste metode
WindowListener
- kontrakt fortæller os det, men kun dem, vi har brug for.