bonjour à tous voila j 'ai un problème dans l 'affichage de ma JList je lui passe une HashMap comprenant des produits que j ai mis en key et quantité par défaut 1 que j ai mis dans value. j ai instancié 3 objets mais le problème est qu'il m affiche 3 false dans la JList. Si quelqu'un a déjà eu un souci de ce genre. Peut-il m 'éclairer ?
Merci d'avance
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 scroolpane = new JScrollPane(); liste = new JList(); ltp = new Panier(); liste.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); int i = 1; Produit p = new Produit("Motherboard phoenix", "M26366", "120", "21"); Produit p2 = new Produit("keyboard Logitech", "K23699", "99", "21"); Produit p3 = new Produit("Alienware dell", "KF4535", "989", "21"); ltp.ajouterProduits(p, i); ltp.ajouterProduits(p2, i); ltp.ajouterProduits(p3, i); /*for(Entry<Produit,Integer> entry : ltp.getListeProduit().entrySet()){ Produit cle = entry.getKey(); int val = entry.getValue(); System.out.println(cle.toString()+" Quantité = "+val); }*/ modelListe = new ModelListe(ltp); liste.setModel(modelListe); scroolpane.setViewportView(liste); this.getContentPane().add(scroolpane,BorderLayout.CENTER);je pense que le problème vient de mon model de la méthode getElementAt
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
47
48 package modelListe; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; import javax.swing.AbstractListModel; import pojo.Panier; import pojo.Produit; public class ModelListe extends AbstractListModel { private Panier ltp; public ModelListe(Panier l){ ltp = l; } @Override public Object getElementAt(int index) { return ltp.getListeProduit().containsKey(index); } @Override public int getSize() { return ltp.getListeProduit().size(); } public Panier getLtp() { return ltp; } public void setLtp(Panier ltp) { this.ltp = ltp; } }
Partager