Atualizar a variável de um jframe após fechar um jdialog

2 respostas
T

Oi não tenho muita prática no java SE. O que acontece é o seguinte preciso atualizar uma variável de um Jframe que após clicar em um botão de pesquisa abre um JDialog com os dados para pesquisar após localizado o item é apertado o botão ok, o qual deveria passar o valor da variável dos campos ID e Nome do JDialog para a tela do Jframe atualizando a mesma.

Vou inserer abaixo o código que estou utilizando para as duas classes:

public class JProcesso extends javax.swing.JFrame {

...

    private void jButton_Consulta_EmpresaActionPerformed(java.awt.event.ActionEvent evt) {                                                         

        JConsultaEmpresa jConsultaEmpresa = new JConsultaEmpresa(this, true);
        jConsultaEmpresa.setVisible(true);
        
        String Id_Empresa = jConsultaEmpresa.Id_Empresa;
        String Nome_Empresa = jConsultaEmpresa.Nome_Empresa;        

        jTextField_ID_Empresa.setText(Id_Empresa);
        jTextField_Nome_Empresa.setText(Nome_Empresa);
    } 
...
}
public class JConsultaEmpresa extends java.awt.Dialog {

...
    private void jButton_OkActionPerformed(java.awt.event.ActionEvent evt) {                                           
        
        Id_Empresa = jTextField_ID.getText();
        Nome_Empresa = jTextField_Nome.getText();

        System.out.println("OK dialog "+Nome_Empresa);
        
        setVisible(false);
//        JProcesso j =
        dispose();
    }    
...
}

Obrigado pela atenção de todos.

2 Respostas

ViniGodoy

Adicione getters no seu JDialog:

public class JConsultaEmpresa extends java.awt.Dialog {

    public String getIdEmpresa() {
         return Id_Empresa;
    }

    public String getNomeEmpresa() {
          return NomeEmpresa;
    }
...
    private void jButton_OkActionPerformed(java.awt.event.ActionEvent evt) {                                           
        
        Id_Empresa = jTextField_ID.getText();
        Nome_Empresa = jTextField_Nome.getText();

        System.out.println("OK dialog "+Nome_Empresa);
        
        setVisible(false);
//        JProcesso j =
        dispose();
    }    
...
}
E então use esses getters:
public class JProcesso extends javax.swing.JFrame {

...

    private void jButton_Consulta_EmpresaActionPerformed(java.awt.event.ActionEvent evt) {                                                         

        JConsultaEmpresa jConsultaEmpresa = new JConsultaEmpresa(this, true);
        jConsultaEmpresa.setVisible(true);       

        jTextField_ID_Empresa.setText(jConsultaEmpresa.getIdEmpresa());
        jTextField_Nome_Empresa.setText(jConsultaEmpresa.getNomeEmpresa());
    } 
...
}
T

Fiz os get e set logo depois que mandei o post mas não havia testado obrigado pela atenção.

Criado 25 de agosto de 2009
Ultima resposta 25 de ago. de 2009
Respostas 2
Participantes 2