Bonjour,
J'ai créé une classe héritant d' AbstractTableModel pour faire mes jtable mais je n'arrive pas à cocher les checkbox alors que les zones textes contenues dans cette jtable sont bien accessibles en édition.
Voici ma classe et comment je 'appelle
Comme vous pouvez le voir, je renvoie bien toujours true à isCellEditable
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63 //défini l'header ArrayList<String> header = new ArrayList<String>( Arrays.asList("id","Catégorie", "Sélection")); Class[] columnTypes = new Class[] { String.class,String.class, Boolean.class }; //crée le modèle utilisé pour jtable final MyTableModel modelCateg = new MyTableModel(movie.getCateg(),header,columnTypes); class MyTableModel extends AbstractTableModel { //list contanant les données private ArrayList<Object[]> rows; //list contenant l'entete private ArrayList<String> header; //list contenant les types de colonnes private Class[] columnTypes; public MyTableModel(ArrayList<Object[]> data,ArrayList<String> header,Class[] colTypes){ this.rows = data; this.header = header; this.columnTypes = colTypes; } public void addRow(Object[] row) { //ici j'ajoute à ma list mais à la fin rows.add(0,row); fireTableDataChanged(); } public void emptyData(){ this.rows.clear(); fireTableDataChanged(); } public void setData(ArrayList<Object[]> data){ this.rows.clear(); this.rows = data; fireTableDataChanged(); } @Override public Class<?> getColumnClass(int columnIndex) { return columnTypes[columnIndex]; } @Override public int getColumnCount(){ return header.size(); } public int getRowCount() { return rows.size(); } @Override public String getColumnName(int col){ return header.get(col).toString(); } @Override public Object getValueAt(int row, int col){ return rows.get(row)[col]; } @Override public boolean isCellEditable(int row, int col){ return true; } }
Merci de votre aide
Partager