Pegando um valor de uma JTable e passando para outro formulário
3 respostas
Diego_V_Silva
Bom galera, preciso da ajuda de vocês. Pode ser que o que eu vou colocar aqui já esteja publicado no fórum em algum, o problema é que eu vasculhei tudo e não achei nada.
O meu problema é o seguinte.
Eu tenho um formulário que ao clicar em um botão abre um outro formulário que contem uma JTable, nesta JTable eu realizo pesquisa de algum dado, ao encontrar não estou conseguindo importar o valor da JTable para o formulário que o chamou.
A pergunta é:
Como faço para passar o valor selecionado na JTable para outro formulário?
Este é o código que eu coloquei no evento da JTable para selecionar o dado que eu quero que seja passado para o outro JFrame.
privatevoidtabelaKeyPressed(java.awt.event.KeyEventevt){intlinha=tabela.getSelectedRow();Objectcod=tabela.getValueAt(linha,0);nome=(String)tabela.getValueAt(linha,1);FormUsuariofrm=newFormUsuario(null,true);// Aqui eu estou fazendo a instanciação para o JFrame que eu quero que os dados seja passadoscodigo=String.valueOf(cod);frm.atualiza(codigo,nome);// Aqui eu estou passando o código e nome selecionado como parâmetro para o JFrame de destino. dispose();}
Aqui está o meu método “atualiza” onde deveria atualizar de acordo com os dados selecionado na JTable, mas isso não ocorre, ao invés de aparecer os dados aparece como “null”.
public void atualiza(String codigo, String nome) {
txtCod.setText(""+codigo); // Aparece como "null"
txtNome.setText(""+nome);
}
Marky.Vasconcelos
privatevoidtabelaKeyPressed(java.awt.event.KeyEventevt){intlinha=tabela.getSelectedRow();Objectcod=tabela.getValueAt(linha,0);nome=(String)tabela.getValueAt(linha,1);System.out.println(cod);//<<FormUsuariofrm=newFormUsuario(null,true);// Aqui eu estou fazendo a instanciação para o JFrame que eu quero que os dados seja passadoscodigo=String.valueOf(cod);frm.atualiza(codigo,nome);// Aqui eu estou passando o código e nome selecionado como parâmetro para o JFrame de destino. dispose();}
Faça isso e veja no console se o valor é null ou nao.
PS: Não use o DefaultTableModel. Implemente um TableModel seu.