Probleme avec jList

Fermé
mb42 Messages postés 432 Date d'inscription vendredi 17 octobre 2008 Statut Membre Dernière intervention 14 janvier 2014 - 20 déc. 2010 à 13:56
 marou - 18 juin 2012 à 10:26
Bonjour,
j'ai un problème concernant la remplissage de jList

j'ai un jComboBox qui est rempli automatiquement de la base de donne

et ca marche


j'ajoute un bouton et je fait un test .

selon mon choix il rempli le jList et ca marche avec sucée voila le code



 private void validerActionPerformed(java.awt.event.ActionEvent evt) {                                        
 
 
         
 String choix = jComboBox1.getSelectedItem().toString();
 
       
          v = new Vector<Enseignant>();
        Iterator<Enseignant> l = eDB.findAll().iterator();
        while (l.hasNext()) {
            Enseignant e = l.next();
            if(e.getPU().equalsIgnoreCase(choix))
            {
                v.add(e);
                jList1.setListData(v);
               
        }
 
          
        }
}
 
 



avec biensur la déclaration
 Vector<Enseignant> v;
         EnseignantDB eDB = new EnseignantDB();


et pour la classe EnseigantDB j'ai une méthode findAll() qui retourne une liste d'enseignant.


mon problème qui quant je clique pour la première fois sur le bouton il rempli jList avec l'enseignant qui vérifier la condition

ca marcha avec sucé mais quant je clique pour la deuxième fois il m'affiche c vrai le résultat juste mais 2 fois

de même quant je clique pour la troisième fois il m'affiche 3 fois

j'essaye avec cette manière : au debut de code pour le bouton j'ajoute
private void validerActionPerformed(java.awt.event.ActionEvent evt) {                                        
jList1.removeAll();
 
         
 String choix = jComboBox1.getSelectedItem().toString();
 
       
          v = new Vector<Enseignant>();
        Iterator<Enseignant> l = eDB.findAll().iterator();
        while (l.hasNext()) {
            Enseignant e = l.next();
            if(e.getPU().equalsIgnoreCase(choix))
            {
                v.add(e);
                jList1.setListData(v);
               
        }
 
          
        }
}
 
 


mais le problème reste le même

merci d'avance

2 réponses

Profil bloqué
21 janv. 2011 à 09:05
Faut que tu fasse TonVecteur.clear() avant de remplir la deuxieme fois
0
il faut vider le vecteur avant chaque remplissage
0