Transferência de dados de um Form para outro

Estou com o seguinte problema: Eu tenho um JFrame Normal e nele eu tenho um JComboBox para telefones e um botão que chama um JDialog onde eu posso adiconar quantos telefones eu quiser num JTable. Como eu faria para pegar os dados do meu JTable que está no JDialog e lançar no meu JComboBox que está no JFrame?

Faça os seguintes passos:

  1. Crie o seu modelo da tabela. Caso já tenha, pule para o passo 3;
  2. Siga o meu link na assinatura para descobrir como fazer o seu próprio modelo;
  3. Crie um método em seu TableModel para recuperar os dados da tabela:

public List<Telefone> recuperarTelefones() { return telefones; }
4. No seu JDialog onde há a JTable, crie uma coleção de telefones e um atributo booleano. Você pega os dados da JTable e passa pra ela ao clicar no “OK” ou “Confirmar” do JDialog. Ao clicar em “OK”, sete o booleano para true. O inverso para “Cancelar”;

[code]public class TelefonesDialog extends JDialog {

private TelefonesTableModel tablemodelTelefones;
private List<Telefone> telefones;
private Boolean confirmou;

public List<Telefone> getTelefones() { return telefones; }
public Boolean isConfirmou() { return confirmou; }

public TelefonesDialog() {

    //...
    JButton buttonConfirmar = new JButton("Confirmar");
    buttonConfirmar.addActionListener(new ConfirmarActionListener());
    //...
    JButton buttonCancelar = new JButton("Cancelar");
    buttonCancelar.addActionListener(new CancelarActionListener());
    //...
}


private class ConfirmarActionListener implements ActionListener {
    public void actionPerformed(ActionEvent event) {
        
        this.telefones = tablemodelTelefones.recuperarTelefones();
        confirmou = true;
        dispose();
    }
}

private class ConfirmarActionListener implements ActionListener {
    public void actionPerformed(ActionEvent event) {
        confirmou = false;
        dispose();
    }
}

}[/code]
5. Ao chamar o seu JDialog, faça assim:

[code]public class TelefonesFrame extends JFrame {

public TelefonesFrame() {

    //...
    JButton buttonTelefones = new JButton("...");
    buttonTelefones .addActionListener(new TelefonesDialogActionListener());
}


private class TelefonesDialogActionListener implements ActionListener {
    public void actionPerformed(ActionEvent event) {
        
         TelefonesDialog dialogTelefones = new TelefonesDialog();
         dialogTelefones.exibirFormulario();

         // se clicou em OK...
         if (dialogTelefones.isConfirmou()) {

             // recupera a lista de telefones e adiciona à JComboBox!
             List<Telefone> telefones = dialogTelefones.getTelefones();
             comboboxTelefones.setModel(new DefaultComboBoxModel(telefones.toArray()));
         }
    }
}

[/code]

Espero ter ajudado,
fique com Deus! :smiley: