Bonjour,

Je voudrais placer dans une liste une série d'éléments sélectionnables.
Je me suis donc crée un ListCellRenderer qui étend JCheckbox.
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
public class ListeClassRenderer extends JCheckBox implements ListCellRenderer {
 
    private JCheckBox chkBox;
    private JLabel lbl;
 
    /** Creates a new instance of ListeClassRenderer */
    public ListeClassRenderer() {
        setBorderPainted(true);
    }
 
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
        if ( cellHasFocus )
            setBorder( BorderFactory.createLineBorder(Color.BLUE));
        else 
            setBorder( BorderFactory.createLineBorder(Color.WHITE));
 
        if ( value instanceof ListeClassItem ) {
            ListeClassItem item = (ListeClassItem) value;
 
            setText(item.getLibelle());
            setSelected(item.isSelected());
            setBackground(Color.WHITE);
 
            return this;
        } else {
            setText("Type non admis");
            setEnabled(false);
            return this;
        }
    }
 
}
Cela fonctionne bien sauf que je ne sais pas cocher/décocher les cases. Elles sont cochées par defaut (normal) et restent cochées..

Comment faire pour pouvoir cocher ces cases ?

Merci