sábado, 20 de fevereiro de 2010

JTable - excluir linhas

Seguindo o modelo do post anterior (JTable - inserir linhas), para excluir linhas selecionadas de um JTable basta:


int[] l = projetos.getSelectedRows();
DefaultTableModel dtm = (DefaultTableModel) jTable1.getModel();
for (int i = (l.length - 1); i >= 0; --i) {
     dtm.removeRow(l[i]);//remove todas as linhas selecionadas
}


Mumu....

3 comentários:

Anônimo disse...

Não testei seu código mas acho que para linhas selecionadas entre vários intervalos vai dar problema. Segue um exemplo que resolveu esse caso:

int idx[] = jTable1.getSelectedRows();
modelo_temp.removeRow(idx[0]);
for(int j=1; j<idx.length; j++){
modelo_temp.removeRow(idx[j]-j);
}

Anônimo disse...

Olá, e como faço agora para deletar esses selecionados no banco de dados firebird?
remover da tabela deu certo com segundo código passado... obrigado

zicky23@hotmail.com

Anônimo disse...

Melhor antes de excluir da visão excluilo no banco, por que se der algum erro o item nao sai de la da tabela.
Eu recomento com JPA
onde que voce irá só intanciar seu objeto a ser removido e jogar para um
EntityManager.getTransaction().begin()
Objeto obj=EntityManager.merge(objeto)
EntityManager.remove(obj)
EntityManager.getTransaction().commit()