Bonsoir,
j'ai une Jtable qui affiche notamment des JTextArea. Mon soucis est à l'édition, dans la méthode getCellEditorValue() du TableCellEditor, qui est sensé retourner la valeur de la cellule modifiée afin qu'elle y soit affichée (si j'ai bien compris).... et bien je n'arrive pas à savoir comment trouver cette valeur. Qu'est ce que je suis sensé retourner?
Voici l'Editor :
J'ai essayé d'accéder à la donnée modifiée via la JTable et mon TableModel personnalisé mais je trouve toujours l'ancienne valeur.
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 public class DescAreaCellEditor extends AbstractCellEditor implements TableCellEditor{ private String editingValue; private static final long serialVersionUID = -9030406143699523582L; @Override public Object getCellEditorValue() { System.out.println("getCellEditorValue : " + Ppal.TableR.getValueAt(Ppal.TableR.getSelectedRow(), 8)); System.out.println("getCellEditorValue : " + Ppal.philaTM.getValueAt(Ppal.TableR.getSelectedRow(), 8)); return editingValue; } @Override public void cancelCellEditing() { super.cancelCellEditing(); } public Component getTableCellEditorComponent ( JTable table, Object value, boolean isSelected, int row, int column){ editingValue = value.toString(); System.out.println("Editor : " + value.getClass()); JTextArea textArea = new JTextArea(editingValue); textArea.setWrapStyleWord(true); textArea.setLineWrap(true); JScrollPane pane = new JScrollPane(textArea); pane.setBorder(BorderFactory.createLineBorder(Color.BLACK, 0)); pane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); pane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); return pane; } }
Je suis sûr que c'est tout bête mais je ne vois pas comment y arriver. Merci beaucoup à ceux qui pourraient m'aiguiller vers une piste car il doit y avoir quelque chose qui m'échappe ^^
Partager