Salut tous le monde

dans ma Jframe j'ai deux panels :
---> panel_1 (contient un boutton ok) pour la Saisie (saisir 3 données)
---> panel_2 pour l'affichage du resultat sous forme de tabeau

en bas de ma JFrame j'ai mis un boutton Ajouter (pour ajouter une nouvelle ligne à la liste qui s'affiche dans panel_2 .

pour mieux expliquer voici un cas d'utilisation :
1. saisie de 3données (par exemple x,y,z)
2. clique sur Ok
3.affichage d'une table en fonction des 3données
4.clique sur ajouter
5.apparition de la fenetre (NewEtudiant) pour ajouter une nouvelle ligne
6 clique sur ajouter
7.apparition de la fenetre (NewEtudiant) pour ajouter une nouvelle ligne
8.cliquer sur ok (on garde les mêmes données x,y,z)
9.affichage d'une table en fonction des 3données
10.cliquer sur ajouter
11.apparition de deux fenetres (NewEtudiant)

normalement il doit avoir une seule fenetre newEtudiant
et le probleme ne se pose que lorsque je clique sur OK

je precise que le chargement de la table est associé au boutton ok ,car c'est à cet instant que je recupere les 3 données x,y et z .

dans le constructeur j'ai mis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
 btnOk = new JButton("ok");
		    btnOk.addActionListener(new ButtonListener());
     		btnOk.setBounds(559, 7, 53, 23);
			panelSaisie.add(btnOk);
et comme classe interne j'ai mis
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
40
41
42
43
44
45
46
 
class ButtonListener implements ActionListener {
						  ButtonListener() {
						  }
 
						  public void actionPerformed(ActionEvent e) {
 
						      System.out.println("okClick  :" +  oKclick  +"times ");
						      oKclick ++;
 
 
						      contentPane.remove(panelDisplay);
 
 
						       btnAjouter.setEnabled(true);
 
 
								panelDisplay = new JPanel();
								panelDisplay.setBorder(new EtchedBorder(EtchedBorder.LOWERED, new Color(50, 205, 50), null));
								panelDisplay.setBounds(10, 64, 643, 175);
								contentPane.add(panelDisplay);
								panelDisplay.setLayout(null);  
 
 
								        String   filSel = comboFiliere.getSelectedItem().toString();
								    	String  levSel = comboLevel.getSelectedItem().toString();
									    String  yearSel = yearChooser.getYear()+"";
 
 
									  TableModelEtudiantFly 	 modelEtudiant = new TableModelEtudiantFly(filSel,levSel,yearSel);
									  JTable 	 tableGE = new JTable(modelEtudiant);
							          tableGE.setAutoCreateRowSorter(true);
									 JScrollPane scrollPaneGE = new JScrollPane(tableGE);
									 scrollPaneGE.setBounds(18, 11,550, 125);
 
								 	 panelDisplay.add(scrollPaneGE);
									 btnSupprimer.setEnabled(true);
 
							     	tableGE.addMouseListener(new Mouselistner(tableGE,modelEtudiant)); 
 
							     	 					 btnAjouter.addActionListener(new ButtonAddListner(modelEtudiant));
 
 
   }
 
						    }
et voici la classe interne associé au boutton ajouter
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
 
class ButtonAddListner implements ActionListener {
 
			TableModelEtudiantFly modeleEtudiant;
			  ButtonAddListner(TableModelEtudiantFly modeleEtudiant) {
 
				  this.modeleEtudiant =modeleEtudiant;
			  }
 
			  public void actionPerformed(ActionEvent e) {
 
 
				   System.out.println("addClick  :" + addClick  +"times ");
				      addClick++;
					new NewEtudiant(modeleEtudiant).setVisible(true) ;
 
	        } 
   }

je pense que le probleme provient de actionListener associé au boutton ok ,mais franchement je ne sais pas une autre facon de faire les choses

votre aide s'il vous plait : )