Criei um JTable onde existem 3 campos sendo o primeiro Boolean, vamos supor que existem 10 dados inserido no
JTable e quero criar um botão para quando selecionar os dados do JTable do campo Boolean que virá como false de Defalt e agora estarão como true, esse botão fará o processo de limpar somente as linhas que tem o campo boolean como true. Existe algum jeito facil de fazer isso.
JTable
12 Respostas
Tudo depende de como o Model do seu JTable está implementado.
Se você estiver usando o DefaultTableModel, meus pêsames, vai ser difícil de qualquer jeito.
cara, se voce criar um jTable do zero fica barbada…
cria um Vector com itens e depois altera os ítens e da um refresh na tabela…
se precisar de algum exemplo posso te passar…
Claro, isso se vc estiver usando o Java 1.1 ou inferior.
Desde o Java 1.2, não se deve usar mais a classe Vector, e sim ArrayList. Desde a 1.2 Vector é considerado “Legacy” code e é mantido na API do java só por questões de compatibilidade.
po sacanagem ;/
gosto tanto do vector =~
haehaehaeha
vei jtable é por default meio complicada de se mexer, mais existe um metodo… que se nao me ingano eh rowsorter, que tu pode sobreescrever o metodo compare dele e deixar ativo soh as linahs que tenhan um true
depois digo certinho a classe e ponho um exemplo gora to mei osem tempo XD
Cara, to usando o DefaultTableModel sim. É que eu ainda não sei como criar outro modelo.
Se alguém tiver algum código ajudaria mto!
Valeu!
Cara, to usando o DefaultTableModel sim. É que eu ainda não sei como criar outro modelo.
Se alguém tiver algum código ajudaria mto!
Valeu!
Veja:
http://www.guj.com.br/posts/list/98452.java#530523
Não deixe de ler esses ótimos artigos sobre o assunto:
http://www.informit.com/articles/article.aspx?p=332278
http://www.informit.com/articles/article.aspx?p=333472
E essas classes espertinhas pra lidar com JTable:
http://www.guj.com.br/posts/list/100793.java
oq exatamente vai nessa jtable?
uma lista de objeto?
como tu estas alimentando a table?
Muito obrigado.Vou estudar!
Valeu mesmo!
Filipe, vai só String,int e Double mesmo. Eu faço a consulta no banco de dados e coloco tudo na JTable por meio de uma matriz de String.Passo tudo do ResultSet para a matriz e apresento ja tela.Só que o nome das colunas não aparece de jeito nenhum!
o.O gora tu me confundiu mais … se eh uma matriz de string… como tu via passar um boolean o.O
ja pensou em fazer um objeto? ai cria uma lista de objetos com teu result set, eh muito mais facil de manipular, e de colocar na jtable
Cara, sinceramente eu não entendi a utilidade do boolean…
Explicarei o que eu queria fazer, pois agora consegui com DefaultTableModel, Obrigado pelas dicas.
A Imagem anexada explica o que eu quero fazer.
No botão Limpar imbuti esse codigo abaixo:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Gerando uma Pergunta para o usuario.
Object[] options = {“SIM”, “CANCELA” };
int valorDeResposta = JOptionPane.showOptionDialog(null, “Deseja realmente apagar os campos selecionados!”, “Cuidado”, JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[0]);
//Verificando a resposta
if(valorDeResposta == 0){
int cont = 0;//Criando um contador
DefaultTableModel dtm = (DefaultTableModel)tabela.getModel(); //Criando um Modelo
while(cont < tabela.getModel().getRowCount()){//Navegando na tabela
if(tabela.getModel().getValueAt(cont, 0).equals(true)){
dtm.removeRow(cont);//Removendo os campos true
}
++ cont;
}//Fim do While
}//Fim do If
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Precisava limpar linhas de uma tabela selecionada.
