CheckBox dentro de uma JTable?

Olá forum,

Como inserir um Check dentro de uma JTable ??

ja tem tentei :

JCheckBox box = new JCheckBox(); jtblDB.setValueAt(box,1,1);

e também:

jtblDB.setValueAt(new Boolean(true),1,1);

e também não deu certo

Falow…

Pode parecer bizarro, mas os métodos que vc tem que mexer estão no TableModel:

  1. getColumnClass(): vc retorna Boolean.class na coluna do seu checkbox

  2. getValueAt() para a tal coluna tem que retornar um objeto da classe Boolean

  3. setValueAt() vai receber, como value, um objeto da classe Boolean

mais uma vez, o tutorial de Swing é bastante rápido pra encontrar códigos assim:

http://java.sun.com/docs/books/tutorial/uiswing/components/table.html

to tentando assim:

TableColumn sportColumn = jtblDB.getColumnModel().getColumn(1);
//Set up the editor for the sport cells.

JCheckBox ckbTeste = new JCheckBox();
sportColumn.setCellEditor(new DefaultCellEditor(ckbTeste));

//Set up tool tips for the sport cells.
DefaultTableCellRenderer renderer = new DefaultTableCellRenderer();
//renderer.setToolTipText("Click for combo box");
sportColumn.setCellRenderer(renderer);
//Set up tool tip for the sport column header.
TableCellRenderer headerRenderer = sportColumn.getHeaderRenderer();

porem:
-o checkbox fica numa coluna inteira, preciso que ele fique numa linha inteira
-os checkBox apenas aparecem quando o mouse esta clicado, quando desclica, é atribuido a String false ou true.

Obrigado !

Ola,

Como já dito anteriormente:

DefaultTableModel dtm = new DeafultTableModel() {
      public Class getColumnClass(int c) {
        return getValueAt(0, c).getClass();
    }
};

JTable table = new JTable(dtm);

Note que esse código só funciona se não existem null(s) na sua tabela.

Para mais info. consulte o tutorial.

Vc não precisa mexer com renderers.

[]'s

Eh isso mesmo!!

Não precisa mexer com renderers nem com editors. Ainda mais se é pra setar um Default.

eu acho que vc não leu o link que eu mandei, neh?? : )))

[]s, Tiago.

Infelizmente, tentei fazer, dei uma boa olhada no tutorial da sun, e mesmo
assim não deu certo !
Mais ainda to tentando, se der certo, eu dou um toque !

Obrigado pela ajuda !

[]´s