Bonjour,
J'ai un problème avec les fenetre d'une application Java.
L'application est simple on a une class A et une class B.
Pour la class B c'est à peu près la meme chose à part que c'est la fenetre qui est écouter par une class implémenter de l'interface KeyListener voici la fonction KeyReleased de cet class
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 public class A { public static void main(String[] args) { new A().afficher(); } JFrame fenetre; JButton valider; public void afficher() { fenetre = new JFrame(); valider = new JButton(); fenetre.setTitle("Un jeu de coloration"); fenetre.setSize(250, 130); fenetre.setResizable(false); fenetre.setLocationRelativeTo(null); fenetre.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); valider.addActionListener(new ValiderListener()); fenetre.add(valider); fenetre.setVisible(true); } class ValiderListener implements ActionListener { public void actionPerformed(ActionEvent arg0) { B uneAutreFenetre = new B(); fenetre.setVisible(false); fenetre.dispose(); fenetre = null; uneAutreFenetre.afficher(); } } }
Le problème est que quand je passe de l'un à l'autre des fois ça marche et des fois ça ne marche pas (j'ai remarqué quand on essaye de passer rapidement de l'une à l'autre ça ne marche pas) j'obtiens une fenetre vierge pas centré avec des dimmension plus grande que celle normalement indiquer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public void keyReleased(KeyEvent e) { if(e.getKeyChar() == 'n' || e.getKeyChar() == 'N') { fenetre.setVisible(false); fenetre.dispose(); fenetre = null; new A().afficher(); } }
Je comprend pas le problème.
Merci d'avance.







Répondre avec citation
Partager