De base Java Swing, comment sortir et de les éliminer de votre application/JFrame
Ce qui est une bonne façon de se débarrasser d'un JFrame avec ce code? Je veux gérer la Fenêtre de sortie et de fermeture de fenêtre.
Je sais qu'on ne devrait pas utiliser le Système.exit();
public class JavaCellularAutomataSquare {
public static final String TITLE = "Cellular Automata - Squaring Example";
private int maxWidth = 600;
private int maxHeight = 600;
public void launch() {
final JFrame frame = new JFrame(TITLE);
frame.setLocation(20, 20);
frame.setPreferredSize(new Dimension(maxWidth, maxHeight));
frame.setResizable(false);
frame.setFocusable(true);
final JPanel panel = new JPanel();
panel.setLocation(20, 20);
panel.setVisible(true);
panel.setPreferredSize(new Dimension(maxWidth, maxHeight));
panel.setFocusable(true);
panel.setBackground(Color.white);
//Panel setup, toggle visibility on frame
frame.add(panel);
frame.pack();
frame.setVisible(true);
}
}
S'il vous plaît vérifier Andrew réponse ici: awt-window-close-listener-event
Double Possible de Comment quitter une application java à partir du programme
Double Possible de Comment quitter une application java à partir du programme
OriginalL'auteur Berlin Brown | 2011-08-16
Vous devez vous connecter pour publier un commentaire.
Brun j'espère que oui, fonctionne pour moi comme je m'y attendais, mais en Swing pas possible de déclarer deux ou plus download.oracle.com/javase/tutorial/uiswing/components/... avec setDefaultCloseOperation(EXIT_ON_CLOSE);, parce que chacun d'eux tuer JVM exemple, vous avez accepté que ou un autre avec les CACHER ou les ÉLIMINER 🙂
J'aime cette. J'ai demandé à un type de question générique, mais ce fut la réponse que je cherchais. Aussi, les autres ont fait du bien, mais cela avait le code.
OriginalL'auteur mKorbel
JFrame.setDefaultCloseOperation(DISPOSE_ON_CLOSE)
libère des ressources lorsque la fenêtre est fermée. Vous pouvez voir quelques autres opérations, dans la Java des tutoriels ici.Les arguments que vous pouvez utiliser dans la méthode sont définis dans le WindowConstants de l'interface, si vous êtes curieux de connaître vos options.
met fin à la demande, alors que
DISPOSE_ON_CLOSE
ne dispose que de laJFrame
instance.DISPOSE_ON_CLOSE permettra à l'AWT fil de sortie quand il n'y a pas non-éliminés composants AWT. Qui sera votre dernier fil de sorte que le thread principal est fermé.
Exactement. @Berlin, Prenez un coup d'oeil à ce lien à la Java tutoriels; il énumère les différences.
OriginalL'auteur Feanor
Si vous avez besoin d'effectuer certaines opérations lors de la fermeture de votre application, probablement vous avez besoin d'un
arrêtez de crochet. Jetez un oeil à cette post.
OriginalL'auteur Heisenbug
JFrame.setDefaultCloseOperation(int opération)
JFrame.EXIT_ON_CLOSE
System.exit(0)
.Est-il un gestionnaire d'événements pour l'image.setDefaultCloseOperation? E. g. est-il une méthode que je peux remplacer? onExit() { } ou quelque chose de similaire.
Une fois que vous définissez la valeur par défaut opération de fermeture, il n'est pas nécessaire de remplacer une méthode. À moins que vous mettre en œuvre une fenêtre de l'auditeur à faire quelque chose de différent, la valeur par défaut fermer l'opération est exécutée lorsque l'utilisateur ferme la fenêtre.
Mais si je voulais, je peux utiliser la fenêtre de l'auditeur.
Yup, vous pouvez faire autre chose avec la fenêtre d'écoute si vous le souhaitez.
OriginalL'auteur Serabe