Deixar JCheckBox de uma JTable editavel

Boa noite pessoal,
Criei uma Jtable que tem uma coluna com JCheckBox, só que eu não consigo clicar nessa JCheckBox. Alguem poderia me ajudar.

O codigo é esse.

Cria a check box

class CustomCheckBox extends JCheckBox implements TableCellRenderer {
	private static final long serialVersionUID = 1L;

	public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column){
		if( value instanceof JComponent){
			return (JComponent)value;
		}
		else
		{
			return null;
		}
	}

}

Monta a tabela


		
	 /*  MONTA TABELA */ 		
	  private void DisplayData(List<Servicos>ProductsList){
		  try{
			 	  
		  
		  DefaultTableModel aModel = new DefaultTableModel() {
		  /**
			 * 
			 */
			private static final long serialVersionUID = 1L;
			

		//setting the jtable read only

			  @Override
		  		public boolean isCellEditable(int row, int column) {
			  return false;
		  	}
		  };
		  
			
		  //setting the column name
		  Object[] tableColumnNames = new Object[2];
		  tableColumnNames[0] = "Serviços";
		  tableColumnNames[1] = "";

		  aModel.setColumnIdentifiers(tableColumnNames);
		  if (ProductsList == null) {
			  this.table_FuncioanrioDisponiveis.setModel(aModel);
		  return;
		  }
		  
		  
		  
		  Object[] objects = new Object[2];
		  ListIterator<Servicos> lstrg = ProductsList.listIterator();	
		  		  

		  while (lstrg.hasNext()) {		  
			  
			  CustomCheckBox check = new CustomCheckBox();
		  Servicos newcus = lstrg.next();
		  //CustomLabel12 label = new CustomLabel12();//
		  
		  objects[0] = newcus.getDescServico();
		  objects[1] = check;
		  		  
		  aModel.addRow(objects);
		  }
		  
		  //binding the jtable to the model
		  this.table_FuncioanrioDisponiveis.setModel(aModel);
		  }
		  catch (Exception e) {
			e.printStackTrace(); // TODO: handle exception
		}
		 
	  }
}

cria a JTable

[code]

private JTable getTable_FuncioanrioDisponiveis() throws Exception {
if (table_FuncioanrioDisponiveis == null) {
table_FuncioanrioDisponiveis = new JTable();

			ServicosDAO dao = new ServicosDAO();
		
			List<Servicos> consultarMovtoFuncionario = dao.consultaServico("select * from servicos");
			listaServicos = consultarMovtoFuncionario;			
			DisplayData(listaServicos);			
	
			TableColumn column = table_FuncioanrioDisponiveis.getColumnModel().getColumn(1);
			column.setCellRenderer(new CustomCheckBox());
			column.setPreferredWidth(-8);
			
			table_FuncioanrioDisponiveis.addMouseListener(new MouseAdapter() {  
			    public void mouseClicked(MouseEvent me) {  
			        //Verificando se o botão direito foi pressionado  
			        if ((me.getModifiers() & MouseEvent.BUTTON3_MASK) != 0) {  
			            JPopupMenu menu = new JPopupMenu();  
			            JMenuItem cliqueme = new JMenuItem("Atualizar");  
			  
			            cliqueme.addActionListener(new ActionListener() {  
			                public void actionPerformed(ActionEvent ae) {  
			                    try {
									atualizaTabela();
								} catch (Exception e) {
									// TODO Auto-generated catch block
									e.printStackTrace();
								}
			                }

					
			            });  
			  
			            menu.add(cliqueme);  
			  
			            menu.show(table_FuncioanrioDisponiveis, me.getX(), me.getY());  
			        }  
			    }  
			}); 
								
	
		}
		return table_FuncioanrioDisponiveis;

}
[/code]

Ja tentei da um setEnabled mais não deu certo.

Obrigado.

Opa, tiago!

Primeiro, você pode fazer um modelo pra sua tabela, esquecendo do DefaultTableModel, que é o que parece que você está usando.
Crie um modelo baseado no link da minha assinatura.

Quando criar o seu modelo…

Para criar uma CheckBox:

public Class getColumnClass(int col)
{
   if (col == colunaDoCheckBox) return Boolean.class;
}

Para clicar e alterar o seu valor, faça uso do setValueAt!

Espero ter ajudado, abraços!