Bloquear ordenação de linhas na jTable

5 respostas
marcosarantesj

Sei como bloquear a ordenação das colunas da jTable, só falta saber se tem como bloquear a ordenação dos registros da jTable, porque se o usuário clicar em uma coluna e os registros dessa coluna forem ordenados, ao clicar em selecionar registro para alterar, os campos vão ser preenchidos com os registros errados, porque vai estar pegando o índice errado.

5 Respostas

Ivan_Alves

Tá não sei se é o que você precisa mas para pegar o indice absoluto de uma JTable mesmo ele alterando a ordenação você pode fazer assim

//pego o item da posição 0 mesmo que o usuário altere a posição das colunas em tempo de execução int pegarIdPosicao0 = (Integer)suaTabela.getValueAt(suaTabela.getSelectedRow(), suaTabela.convertColumnIndexToView(0));

flw!

marcosarantesj

Vou testar e aí posto aqui se deu certo.

marcosarantesj

Não funcionou. faz tempo que vi isso. Não tem como bloquear mesmo não? queria que não fosse possível o usuário ordenar algum registro em ordem ascendente ou descendente.

Ivan_Alves

Tá esse código que te passei é se no caso ele mover as colunas de posição e não tem nada a ver com ordenação mesmo, pensei que era isso que queria, quanto ao outro eu não sei!

flw

marcosarantesj

Consegui segue o código.

private TableModel model;
 final TableRowSorter<TableModel>sorter = new TableRowSorter<TableModel>(model) {
        @Override
        public boolean isSortable(int column) {
        return false;
        }
        };
Criado 4 de julho de 2011
Ultima resposta 4 de ago. de 2011
Respostas 5
Participantes 2