Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Sou iniciante em java,e tenho que desenvolver uma aplicação simples,mas estou tendo algumas dúvidas:
Tenho um JFrame de cadastro,e nesse JFrame tem um botão que quando eu clico,chamo uma outra tela com um JTable listando todos os cadastros que existem no meu banco.
Até aí beleza.
O que eu preciso é o seguinte:
Quando eu clico em uma linha do JTable, tenho que chamar um método passando como parâmetro a linha clicada e fechar o JFrame que contém o JTable.
Até consigo passar esse parâmetro e lá no método de destino se eu mandar imprimir o parâmetro dá tudo certo, o problema é que tenho que pegar esse parâmetro e procurar um registro no banco que tenha um campo com esse valor e mostrar na primeira tela o resultado da busca....mas,tentei de várias formas e não consegui.
O meu código pra capturar o valor da linha clicada é o seguinte:
public void tbFrotaLinhaSelecionada(){
if(tbFrota.getSelectedRow() != -1){
Frota frota = new Frota();
Integer cod = veiculos.get(tbFrota.getSelectedRow()).getNumRegistro();
FrotaControl fc = new FrotaControl();
if(fc.consultaFrota(veiculos.get(tbFrota.getSelectedRow()).getNumRegistro()).size() > 0){
//metodo que popula as informações com o parâmetro
frota.popularDados(veiculos.get(tbFrota.getSelectedRow()).getNumRegistro());
}
}
this.dispose();
}
Código do método popularDados();
public void popularDados(int cod){
FrotaView fv = new FrotaView();
Integer codigo = cod;
FrotaControl fc = new FrotaControl();
List<FrotaBean> registro = fc.consultaFrota(cod);
if(registro.size() > 0){
//System.out.println(fc.consultaFrota(cod).size());
FrotaBean fb = new FrotaBean();
try {
fb = registro.get(0);
Integer ano = fb.getAno();
System.out.println("Ano:" + ano);//Esse comando funciona,mas quando seto para o TextField não popula o ano
tfAno.setText(ano.toString());
SimpleDateFormat formataData = new SimpleDateFormat("dd/MM/yyyy");
tfDataAquisicao.setText(formataData.format(fb.getDataAquisicao()).toString());
tfModelo.setText(fb.getModelo());
tfPlaca.setText(fb.getNumPlaca());
tfRegistro.setText(tfPesquisar.getText());
cmbTipoVeiculo.setSelectedItem(fb.getTipoFrota());
if (fb.getInProprio()) {
cbVeiculoProprio.setSelected(true);
} else {
cbVeiculoProprio.setSelected(false);
}
lblResult.setText("");
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Desde já agradeço a quem puder me dar umas dicas de como fazer isso.
Carregando comentários...