Bonjour,
cela fait plusieurs fois que je tombe sur ce problème. J'ai essayé de le contourner à chaque fois, mais là ce n'est plus possible.
Voici ce que fais mon renderer :
Mon problème, c'est qu'il n'y a rien dans value apparemment, donc le split ne fonctionne pas, et mets rien dans val[0], tandis que val[1] n'est pas affecté. Le résultat du println me donne
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 public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { if (table == null || !(value instanceof String) || (value == null) ) { return this; } String renderedValue=null; String val[] = new String[2]; val = ((String) value).split(","); System.out.println("value = " + value); System.out.println("val[0] = " + val[0]); System.out.println("val[1] = " + val[1]+"\n"); if(value==null) System.out.println("value est nulle"); if(value.equals("")) System.out.println("value est vide"); if(val==null) System.out.println("val = null"); if(val[0] == null) System.out.println("val[0] = null"); if (val[1].charAt(0) != '0') { //traitements } else { //traitements } return super.getTableCellRendererComponent( table, renderedValue, isSelected, hasFocus, row, column); }
value =
val[0] =
Ce que j'aimerai, c'est trouver un test à faire sur value pour dire que si il n'y a rien dedans, je ne fais rien, et sinon je fais mon split. Or d'après mes tests, value n'est pas null et value n'est pas vide, sinon, cela aurait été affiché dans la console.
Merci d'avance pour votre aide.
Partager