Jtable com checkbox

2 respostas
R

ola pessoal, gostaria de saber se alguem tem o topico que explica como manipular checkbox na jtable, detectar o clique, selecao, etc . Ele costumava ficar no seguinte link

http://www.guj.com.br/forum/viewtopic.php?t=1987&highlight=jtable

mas parece que ta fora do ar…

T++

2 Respostas

Luiz_Gustavo

Putz… naum sei se te ajuda colega, mas se você implementar uma classe que extenda AbstractTableModel, você resolve o seu problema.

Esse método é importante, pois é ele que identifica qual o tipo de objeto na célula, para melhor ajustá-lo:

public Class getColumnClass(int c);

Exemplo:

class MyTableModel extends AbstractTableModel {
    private String[] columnNames = ...//same as before...
    private Object[][] data = ...//same as before...

    public int getColumnCount() {
        return columnNames.length;
    }

    public int getRowCount() {
        return data.length;
    }

    public String getColumnName(int col) {
        return columnNames[col];
    }

    public Object getValueAt(int row, int col) {
        return data[row][col];
    }

    public Class getColumnClass(int c) {
        return getValueAt(0, c).getClass();
    }

    /*
     * Don't need to implement this method unless your table's
     * editable.
     */
    public boolean isCellEditable(int row, int col) {
        //Note that the data/cell address is constant,
        //no matter where the cell appears onscreen.
        if (col < 2) {
            return false;
        } else {
            return true;
        }
    }

    /*
     * Don't need to implement this method unless your table's
     * data can change.
     */
    public void setValueAt(Object value, int row, int col) {
        data[row][col] = value;
        fireTableCellUpdated(row, col);
    }
    ...
}

Você pode encontrar aqui mais informações (inclusive o contexto desse exemplo).

Dê uma olhada na tal Classe… e tente implementá-la.
Se não cconseguir, tento montar um exemplo pra te ajudar!

[]'s

rissato

na array de objetos que vao compor as linhas do JTable, vc coloca um elemento ‘new Bollean(false)’. Isso vai colocar automaticamente a JCheckBox (desmarcada) na tabela. Também é preciso implementar o método getColumnClass() do TableModel

Criado 23 de junho de 2006
Ultima resposta 20 de jul. de 2006
Respostas 2
Participantes 3