j'ai 3 combobox.
Je souhaite remplir la 2nde ComboBox en fonction de l'élément selectionner dans la 1ère. Ensuite, la même chose pour la 3ème en fonction de la 2nde.
j'ai utilisé action listener et j'ai l'appelé dans actionPerformed
mon code s’exécute bien mais j'ai un problème pour supprimer l'ancien items dans chaque combobox, j'ai recu le message d'erreur suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at test.Prin$Deuxieme_combo.actionPerformed(Prin.java:154)
l'erreur c'est au niveau deuxieme combo
java : 154
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 if(ComboB.getSelectedItem().equals("C"))
mon code pour le premier combobox est le suivant :
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
lass Premier_combo implements ActionListener
{
 
        @Override
        public void actionPerformed(ActionEvent e) {
           if(ComboA.getSelectedItem().equals("A"))
          { 
        ComboB.removeAllItems();
            ComboB.addItem("C");
          }
   else
               if(ComboA.getSelectedItem().equals("B"))
          {
 
               ComboB.removeAllItems();
          ComboB.addItem("D");
          } 
        }
 
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
private void ComboAActionPerformed(java.awt.event.ActionEvent evt) {
Premier_combo  premier = new Premier_combo();
 
ComboA.addActionListener(premier);
    }
le code de deuxieme combobox est les suivant:
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
class Deuxieme_combo implements ActionListener
{
 
        @Override
        public void actionPerformed(ActionEvent e) {
             if(ComboB.getSelectedItem().equals("C"))
          {
         ComboC.removeAllItems();
            ComboC.addItem("E");
          }
   else
               if(ComboB.getSelectedItem().equals("D"))
          {
 
              ComboC.removeAllItems();
          ComboC.addItem("F");
          }  
        }     
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 private void ComboBActionPerformed(java.awt.event.ActionEvent evt) {
Deuxieme_combo deuxieme= new Deuxieme_combo();
 
ComboB.addActionListener(deuxieme);
 
    }

mon problème normalement c'est au niveau suppression des anciens items mais j'ai pas trouvé une autre solution car j'ai besoin d'éliminer les anciens.