Fórum Duvida - Passar dados entre 2 jDialog pelo construtor #430883
12/12/2012
0
Tenho uma duvida relacionado a passar dados via construtor entre 2 jDialog (PesquisaPessoa, Venda)
Passos
1 - Eu tenho meu jDialog Venda que chama o jDialog PesquisaPessoa
2 - No PesquisaPessoa eu pego todos os dados da linha selecionada do meu jTable e passo para um ArrayList ao pressionar o botão ok
3 - No construtor do Venda eu pego esse ArrayList e quero setar os dados em um jTextField
meu código esta o seguinte
// VENDA
public Venda(java.awt.Frame parent, boolean modal, ArrayList<String> listaVenda) {
super(parent, modal);
initComponents();
this.listaVenda = listaVenda;
String id = listaVenda.get(0);
String nome = listaVenda.get(1);
jTextFieldCliente.setText(id);
jLabelNomeCliente.setText(nome);
}
// PESQUISAPESSOA
private void jButtonOkActionPerformed(java.awt.event.ActionEvent evt) {
// Pego a linha da tabela (Estou usando abstract)
jTablePesPessoa.getSelectedRow();
// Criei um Vetor para guardar os dados
Vector<Object> linha = new Vector<Object>();
// Salvo no vetor
for(int i=0; i<jTablePesPessoa.getColumnCount(); i++){
linha.addElement( jTablePesPessoa.getValueAt( jTablePesPessoa.getSelectedRow() , i ) );
}
// O metodo VetorPataStr serve para mudar todos os dados para uma arrayList de String
// Chamo o contrutor de Venda
vd = new Venda(null, true, pc.vetorParaStr(linha));
vd.setVisible(true);
}
Quando eu chamo "vd.setVisible(true);" ele cria uma outra tela do jeitinho que eu quero. Porem eu não gostaria que criasse uma outra tela. E sim usasse a tela que ja foi chamada antes (quando clico em ok a tela PesquisaPessoa some e insere os dados na tela Venda anterior).
Obrigado desde ja.
Renato Chinaglia
Curtir tópico
+ 0Posts
13/12/2012
Davi Costa
É um excelente padrão de projeto que vai resolver seu problema, pesquisa na rede caso tenha dúvida só postar aqui
att Davi
Gostei + 0
13/02/2013
Renato Chinaglia
Vou pesquisar sobre isso
Abraço
Gostei + 0
15/02/2013
Davi Costa
att Davi
Gostei + 0
31/07/2013
José
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)