Bonjour à tous!

J'ai un soucis avec mon defaultCellEditor. J'ai un Jtable qui contient 5 champs, dont 2 sont composé de JCheckbox, et je n'arrive pas à éditer les JCheckbox.
voici mon code :
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
 
String[] titre_colonnes = {"nom","prenom","adresse","to","cc"};
 
		Object[][] list_complete=new Object [list.length][titre_colonnes.length];
 
//On crée un nouveau tableau en insérant les composant JCheckbox
//list est un tableau qui contient, le nom, prénom et l'adresse mail des contact
		for(int i=0;i<list.length;i++)
		{
			for(int j=0;j<titre_colonnes.length;j++)
			{
				if(j==0 || j==1 || j==2)
					list_complete[i][j]=list[i][j];
				else
					list_complete[i][j]=new JCheckBox("");
			}
		}
 
		modele mon_modele = new modele(list_complete,titre_colonnes);
 
 
 
		JTable jTable1 = new JTable(mon_modele);
		//on ne permet pas de permutter les colonnes
		jTable1.getTableHeader().setReorderingAllowed(false);
 
		jTable1.getColumn("to").setCellRenderer(new checkboxRenderer());
		jTable1.getColumn("to").setCellEditor(new checkboxEditor(new JCheckBox()));
		jTable1.getColumn("cc").setCellRenderer(new checkboxRenderer());
		jTable1.getColumn("cc").setCellEditor(new checkboxEditor(new 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
33
34
35
36
37
38
 
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
class checkboxEditor extends DefaultCellEditor implements ItemListener 
{
	private JCheckBox button;
 
	public checkboxEditor(JCheckBox checkBox) 
	{
		super(checkBox);
	}
 
	public Component getTableCellEditorComponent(JTable table, Object value,boolean isSelected, int row, int column) 
  	{
		if (value==null) return null;
 
		button = (JCheckBox)value;
		/*cette instruction indique, que lorsqu'il y aura un changement sur le choix 
		  avec le bouton button,la méthode ItemStateChanged de this sera invoquée*/
		button.addItemListener(this);
		System.out.println("on est dans la fonction getTableCellEditorComponent");
		return (Component)value;
  	}
 
	public Object getCellEditorValue() 
	{
		button.removeItemListener(this);
		System.out.println("on est dans la fonction getCellEditorValue");
		return button;
  	}
 
  	public void itemStateChanged(ItemEvent e) 
  	{
		super.fireEditingStopped();
  	}
}
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
 
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
 
 
public class checkboxRenderer implements TableCellRenderer 
{
	public Component getTableCellRendererComponent(JTable table, Object value,
				   boolean isSelected, boolean hasFocus, int row, int column) 
	{
		if (value==null) 
			return null;
 
		return (Component)value;
	}
}
Merci d'avance!!!