Sou iniciante na linguagem, e estou conhecendo o Swing agora…tenho um probleminha aqui…
Tenho duas classes frames, Fornecedor e PesquisarFornecedor(os frames são abertos ao msmo tempo)…
Eu estou conseguindo passar os valores pesquisados na PesquisarForncedor para a Fornecedor sem problemas…
porém, qndo eu fecho a janela de pesquisa(PesquisarFonecedor) o valor não aparece no JTextField do frame Fornecedor…
eu estou SETando o JTFieldcodforn.setText(bean.getCodforn());
e tenho certeza que o valor esta sendo SETado corretamente, pois eu exibo ele no console System.out.println(JTFieldcodforn.getText());
mas ele não é exibido no JTextFiled do frame.
será que é preciso atualizar os JTextField do frame Fornecedor ??? existe algum método para isso ?? ou alguem tem algum exemplo de como exibir um valor de um frame em outro frame…!!!
Fica meio dificil te ajudar porque não sei como você está tratando os dados dos 2 frames.
De qualquer forma, é importante vc saber que um Frame precisa “conhecer” o outro Frame para que isso seja possível.
Talvez seja apenas um problema de referência ao objeto ou algo parecido.
Por não saber como você está tratando isso fica difícil te ajudar.
De qualquer forma mesmo sem acreditar que seja esse o problema, já que você diz que usando system.out.println() você conseguiu verificar que o valor existe nesse objeto, e por ser swing, tente utilizar:
JTFieldcodforn.repaint();
(implemente esse comando após definir o valor no JTextField, de preferência na mesma tela do JTextField)
new FornecedorGui().retornoPesquisa(bean);[/b] [i]//aqui crio uma instancia chamando o metodo "retornoPesquisa()" passando como parametro o objeto bean(que esta com os valores)[/i]
[b]
}
}
}[/b]
eu não deveria criar uma nova instancia ?!?..como seria o mais correto para passar os valores selecionados para o frame Fornecedor ???
segue tbm o metodo q recebe o objeto bem na classe frame Fornecedor…
public class GranjaGui extends javax.swing.JFrame {
…
…
…
public void retornoPesquisa(FornecedorBean bean) {
txtcodfornecedor.setText(bean.getCod_fornecedor());
txtdesc_fornecedor.setText(bean.getDesc_fornecedor());
//txtcodfornecedor.repaint();
//txtdesc_fornecedor.repaint();
//exibindo no prompt
System.out.println(txtcodfornecedor.getText()); //exibição ok !
System.out.println(txtdesc_fornecedor.getText());//exibição ok!
//exibindo no prompt
System.out.println(bean.getCod_fornecedor());//exibição ok !
System.out.println(bean.getDesc_fornecedor());//exibição ok !
}
}
Obs: os valores são passados corretamente…a zica, é que não são exibidos nos JTextFields qndo fecho a janela de pesquisa…
não sei se o mais usual pra essa rotina de pesquisa seria criar esses metodos…caso alguem tenha um exemplo mais simples …poste por favor…