Problema com GUI java

Bom dia a todos,

estou desenvolvendo uma agenda, (trabalho de faculdade), e estou usando o netbeans 7.0.
vou fazer um rezumo do programa, e depois o que ta dando errado…
tenho as classes

Classe: Dado
atributos: Nome, telefone, end, email, sexo, e estado civil;
Metodos: gets e sets

Classe: Agenda
atributos: Dado raiz (pois e uma estrutura de arvore binaria)
Metodos: inserirraiz, inserir, pesquisar, remover, alterar, e o get e set do atributo raiz.

Formulario Jframe: Cadastro
cria um objeto Dado e chama o metodo inserir da classe Agenda.

Formulario Jframe: Pesquisar
chama o metodo pesquisar da classe agenda e passa como parametro o no raiz da arvore e uma string nome para ser pesquisarda.

Bom, meu problema e o seguinte, no fomulario de cadastro eu criei uma instancia da classe Agenda, e consegui acessar o no raiz, e os metodos perfeitamente.
Ja no formulario Pesquisar eu crio uma instancia da classe Agenda mas quando tento acessar o atributo raiz, da erro, mais os metodos eu acesso normalmente.

Posta o erro ai

Galera acho que descobri o problema, mais surgiu outro…

o que esta aconteçendo e o seguinte, estou guardando os registros em uma arvore binaria, ai quando eu abro a tela de cadastro, vo la cadastro os dados tudo beleza, so que quando eu fecho a tela de cadastro, perco os dados que inseri, enquando ela esta aberta funciona beleza, so que se eu fechar perco todos os dados inseridos, cada vez que eu abro ela, eu cadastro o no raiz de novo, e como se ele tivesse valor null…

alguem sabe como eu poderia fazer para que os dados nao fossem perdidos?

Alguem poderia ajudar???

Como você está guardando essas informações?

Estou guardando eles em uma estrutura de arvore binaria…
esse e um pedaço do codígo com os metodos de inserção!

[code]public class Agenda {
private Dado raiz;

public void inserirRaiz(Dado novo){
   JOptionPane.showMessageDialog(null,"Cadastrando raizzz");
    this.setRaiz(novo);
}


public void inserir(Dado raiz, Dado novo){
    if(raiz.getNome().compareToIgnoreCase(novo.getNome()) < 0){
        if(raiz.getEsq() == null){
            raiz.setEsq(novo);
        }else{
            inserir(raiz.getEsq(), novo);
        }
    }else{
        if(raiz.getDir() == null){
            raiz.setDir(novo);
        }else{
            inserir(raiz.getDir(), novo);
        }
    }
}[/code]

Na hora de inserir pergunta se raiz e igual a null, se for ele chama o metodo insereraiz(), caso contratio e chamado o metodo insere(). Isso ta funcionando, o que da erro e quando eu fecho a tela de cadastro, ai a raiz volta a ter valor null.

Filipe,

Se você está perdendo os dados quando fecha a tela é que provavelmente você está instanciando no lugar errado e ao fechar a tela o objeto Dado está sendo limpo.

Desculpa minha pergunta noob… mas… dá pra armazenar dados com Java puro?

Acho que esse era o caso de usar um SQL na vida hein!

Você está passando o mesmo Objeto Agenda para a tela de Pesquisa ???

Pois se estiver criando o objeto lá de novo, é lógico que seus dados inseridos foram perdidos…

Porém uma coisa me deixou intrigado, você não está guardando um novo inserido em uma lista, ou o seu Objeto agenda que é guardado em uma lista ???

Posta aí o código dos teus 2 Frames…

Abs []

Desculpem pela extensão do post, mais e uma tentativa de explicar meu problema.

Vou postar minhas classes aqui:

Classe Agenda, onde tem meus metodos:

[code]import javax.swing.JOptionPane;

public class Agenda {
private Dado raiz;
private Dado pesq;

public void inserirRaiz(Dado novo){
   JOptionPane.showMessageDialog(null,"Cadastrando raizzz");
    this.setRaiz(novo);
}

public void inserir(Dado raiz, Dado novo){
    if(raiz.getNome().compareToIgnoreCase(novo.getNome()) < 0){
        if(raiz.getEsq() == null){
            raiz.setEsq(novo);
        }else{
            inserir(raiz.getEsq(), novo);
        }
    }else{
        if(raiz.getDir() == null){
            raiz.setDir(novo);
        }else{
            inserir(raiz.getDir(), novo);
        }
    }
}

public void pesquisarNome(Dado raiz, String nome){
   if(raiz != null){ 
        if(raiz.getNome().compareToIgnoreCase(nome) == 0){
            pesq = raiz;
        }
        pesquisarNome(raiz.getDir(), nome);
        pesquisarNome(raiz.getEsq(), nome);
       
   }
} 

public void pesquisarNumero(Dado raiz, int num){
    if(raiz != null){
        if(raiz.getNum() == num || raiz.getCel() == num){
            setPesq(raiz);
        }
        pesquisarNumero(raiz.getEsq(), num);
        pesquisarNumero(raiz.getDir(), num);
    }
}

public Dado getRaiz() {
    return raiz;
}

public void setRaiz(Dado raiz) {
    this.raiz = raiz;
}

public Dado getPesq() {
    return pesq;
}

public void setPesq(Dado pesq) {
    this.pesq = pesq;
}

}
[/code]

JFrame AgendaInicio, onde instancio o objeto Agenda, e chamo os outros JFrames:

IMAGEM:
[/img]

Uploaded with ImageShack.us[img]

Codigo Fonte:

[code]public class AgendaInicio extends javax.swing.JFrame {

Agenda a = new Agenda();

/** Creates new form AgendaInicio */
public AgendaInicio() {
    initComponents();
}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jPanel1 = new javax.swing.JPanel();
    jBCadastrar = new javax.swing.JButton();
    jBPesquisar = new javax.swing.JButton();
    jBAlterar = new javax.swing.JButton();
    jBCrescente = new javax.swing.JButton();
    jBDecrescente = new javax.swing.JButton();
    jBExcluir = new javax.swing.JButton();
    jBSair = new javax.swing.JButton();
    jMenuBar1 = new javax.swing.JMenuBar();
    jMSair = new javax.swing.JMenu();
    jMCadastrar = new javax.swing.JMenuItem();
    jMPesquisar = new javax.swing.JMenuItem();
    jMAlterar = new javax.swing.JMenuItem();
    jMOrdenar = new javax.swing.JMenu();
    jMCrescente = new javax.swing.JMenuItem();
    jMDecrescente = new javax.swing.JMenuItem();
    jMenuItem6 = new javax.swing.JMenuItem();
    jMenu2 = new javax.swing.JMenu();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("Agenda Eletronica");

    jBCadastrar.setText("Cadastrar");
    jBCadastrar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jBCadastrarActionPerformed(evt);
        }
    });

    jBPesquisar.setText("Pesquisar");
    jBPesquisar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jBPesquisarActionPerformed(evt);
        }
    });

    jBAlterar.setText("Alterar");

    jBCrescente.setText("Ordenar Cres");
    jBCrescente.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jBCrescenteActionPerformed(evt);
        }
    });

    jBDecrescente.setText("Ordenar Dec");

    jBExcluir.setText("Excluir");

    jBSair.setText("Sair");
    jBSair.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jBSairActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(
        jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGap(65, 65, 65)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                    .addComponent(jBCrescente)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 37, Short.MAX_VALUE)
                    .addComponent(jBDecrescente))
                .addGroup(jPanel1Layout.createSequentialGroup()
                    .addComponent(jBCadastrar, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 37, Short.MAX_VALUE)
                    .addComponent(jBPesquisar, javax.swing.GroupLayout.PREFERRED_SIZE, 99, javax.swing.GroupLayout.PREFERRED_SIZE)))
            .addGap(36, 36, 36)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                .addComponent(jBAlterar, javax.swing.GroupLayout.PREFERRED_SIZE, 108, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jBExcluir))
            .addGap(66, 66, 66))
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGap(241, 241, 241)
            .addComponent(jBSair, javax.swing.GroupLayout.PREFERRED_SIZE, 86, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addContainerGap(231, Short.MAX_VALUE))
    );

    jPanel1Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jBAlterar, jBCadastrar, jBCrescente, jBDecrescente, jBExcluir, jBPesquisar});

    jPanel1Layout.setVerticalGroup(
        jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGap(85, 85, 85)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jBPesquisar, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jBAlterar, javax.swing.GroupLayout.PREFERRED_SIZE, 62, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addComponent(jBCadastrar, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGap(52, 52, 52)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jBDecrescente)
                .addComponent(jBCrescente)
                .addComponent(jBExcluir))
            .addGap(95, 95, 95)
            .addComponent(jBSair)
            .addContainerGap(36, Short.MAX_VALUE))
    );

    jPanel1Layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {jBAlterar, jBCadastrar, jBCrescente, jBDecrescente, jBExcluir, jBPesquisar});

    jMSair.setText("Agenda");
    jMSair.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            jMSairMouseClicked(evt);
        }
    });

    jMCadastrar.setText("Cadastrar");
    jMSair.add(jMCadastrar);

    jMPesquisar.setText("Pesquisar");
    jMSair.add(jMPesquisar);

    jMAlterar.setText("Alterar");
    jMSair.add(jMAlterar);

    jMOrdenar.setText("Ordenar");

    jMCrescente.setText("Crescente");
    jMOrdenar.add(jMCrescente);

    jMDecrescente.setText("Decrescente");
    jMOrdenar.add(jMDecrescente);

    jMSair.add(jMOrdenar);

    jMenuItem6.setText("Sair");
    jMenuItem6.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItem6ActionPerformed(evt);
        }
    });
    jMSair.add(jMenuItem6);

    jMenuBar1.add(jMSair);

    jMenu2.setText("Sobre");
    jMenuBar1.add(jMenu2);

    setJMenuBar(jMenuBar1);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
    );

    pack();
}// </editor-fold>                        

private void jBCrescenteActionPerformed(java.awt.event.ActionEvent evt) {                                            
    new Listar().show();

}                                           

private void jBSairActionPerformed(java.awt.event.ActionEvent evt) {                                       
    System.exit(0);
}                                      

private void jMSairMouseClicked(java.awt.event.MouseEvent evt) {                                    
}                                   

private void jBCadastrarActionPerformed(java.awt.event.ActionEvent evt) {                                            
    new Cadastro().show();
}                                           

private void jBPesquisarActionPerformed(java.awt.event.ActionEvent evt) {                                            
    new Pesquisar().show();
}                                           

private void jMenuItem6ActionPerformed(java.awt.event.ActionEvent evt) {                                           
    System.exit(0);
}                                          

public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {

        public void run() {
            new AgendaInicio().setVisible(true);
        }
    });
}
// Variables declaration - do not modify                     
private javax.swing.JButton jBAlterar;
private javax.swing.JButton jBCadastrar;
private javax.swing.JButton jBCrescente;
private javax.swing.JButton jBDecrescente;
private javax.swing.JButton jBExcluir;
private javax.swing.JButton jBPesquisar;
private javax.swing.JButton jBSair;
private javax.swing.JMenuItem jMAlterar;
private javax.swing.JMenuItem jMCadastrar;
private javax.swing.JMenuItem jMCrescente;
private javax.swing.JMenuItem jMDecrescente;
private javax.swing.JMenu jMOrdenar;
private javax.swing.JMenuItem jMPesquisar;
private javax.swing.JMenu jMSair;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem6;
private javax.swing.JPanel jPanel1;
// End of variables declaration                   

}
[/code]

JFrame Cadastro, que e chamado atraves do JFrame AgendaInicio, e intancia um objeto AgendaInicio.
Pois bem, eu abro essa tela de cadastro, ai vo la cadastro os contatos e funciona perfeitamente, quando eu fecho ela o objeto Agenda a instanciando no JFrame anterior volta a ter valor null.

Imagem:
[/img]

Uploaded with ImageShack.us[img]

Codigo Fonte:

[code]import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class Cadastro extends javax.swing.JFrame {
AgendaInicio a1 = new AgendaInicio();
/** Creates new form Cadastro */
public Cadastro() {
initComponents();
}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jPanel1 = new javax.swing.JPanel();
    jLabel1 = new javax.swing.JLabel();
    jLabel2 = new javax.swing.JLabel();
    jLabel3 = new javax.swing.JLabel();
    jLabel4 = new javax.swing.JLabel();
    jLabel5 = new javax.swing.JLabel();
    jLabel6 = new javax.swing.JLabel();
    jLabel7 = new javax.swing.JLabel();
    jLabel8 = new javax.swing.JLabel();
    jTNome = new javax.swing.JTextField();
    jTTel = new javax.swing.JTextField();
    jTCel = new javax.swing.JTextField();
    jTEmail = new javax.swing.JTextField();
    jTEnd = new javax.swing.JTextField();
    jRMasculino = new javax.swing.JRadioButton();
    jRFeminino = new javax.swing.JRadioButton();
    jRSolteiro = new javax.swing.JRadioButton();
    jRCasado = new javax.swing.JRadioButton();
    jBCadastrar = new javax.swing.JButton();
    jBLimpar = new javax.swing.JButton();
    jBSair = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    setTitle("Cadastro de Contatos");

    jLabel1.setFont(new java.awt.Font("Tahoma", 1, 18));
    jLabel1.setText("Cadastro de Contatos");

    jLabel2.setText("Nome:");

    jLabel3.setText("Tel:");

    jLabel4.setText("Cel:");

    jLabel5.setText("Email:");

    jLabel6.setText("End:");

    jLabel7.setText("Sexo:");

    jLabel8.setText("Est. Civ:");

    jTNome.setToolTipText("Nome do contato");

    jTTel.setToolTipText("Telefone residencial (Somente números)");

    jTCel.setToolTipText("Celular (somente números)");

    jTEmail.setToolTipText("email");

    jTEnd.setToolTipText("Endereço completo");

    jRMasculino.setText("Masculino");
    jRMasculino.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jRMasculinoActionPerformed(evt);
        }
    });

    jRFeminino.setText("Feminino");
    jRFeminino.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jRFemininoActionPerformed(evt);
        }
    });

    jRSolteiro.setText("Solteiro");
    jRSolteiro.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jRSolteiroActionPerformed(evt);
        }
    });

    jRCasado.setText("Casado");
    jRCasado.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jRCasadoActionPerformed(evt);
        }
    });

    jBCadastrar.setText("Cadastrar");
    jBCadastrar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jBCadastrarActionPerformed(evt);
        }
    });

    jBLimpar.setText("Limpar");
    jBLimpar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jBLimparActionPerformed(evt);
        }
    });

    jBSair.setText("Sair");
    jBSair.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jBSairActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(
        jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
            .addContainerGap(164, Short.MAX_VALUE)
            .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 210, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addGap(283, 283, 283))
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGap(67, 67, 67)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                .addComponent(jLabel2)
                .addComponent(jLabel5)
                .addComponent(jLabel3)
                .addComponent(jLabel4)
                .addComponent(jLabel6)
                .addComponent(jLabel8)
                .addComponent(jLabel7))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                .addComponent(jTNome)
                .addComponent(jTTel)
                .addComponent(jTCel)
                .addComponent(jTEmail)
                .addComponent(jTEnd)
                .addGroup(jPanel1Layout.createSequentialGroup()
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jRSolteiro)
                        .addComponent(jRMasculino))
                    .addGap(8, 8, 8)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jRCasado)
                        .addComponent(jRFeminino))
                    .addGap(162, 162, 162)))
            .addContainerGap(231, Short.MAX_VALUE))
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGap(86, 86, 86)
            .addComponent(jBCadastrar)
            .addGap(18, 18, 18)
            .addComponent(jBLimpar)
            .addGap(18, 18, 18)
            .addComponent(jBSair)
            .addContainerGap(292, Short.MAX_VALUE))
    );

    jPanel1Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jBCadastrar, jBLimpar, jBSair});

    jPanel1Layout.setVerticalGroup(
        jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGap(21, 21, 21)
            .addComponent(jLabel1)
            .addGap(37, 37, 37)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel2)
                .addComponent(jTNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jTTel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel3))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jTCel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel4))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jTEmail, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel5))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jTEnd, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel6))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jRFeminino)
                .addComponent(jLabel7)
                .addComponent(jRMasculino))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel8)
                .addComponent(jRCasado)
                .addComponent(jRSolteiro))
            .addGap(63, 63, 63)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jBCadastrar)
                .addComponent(jBLimpar)
                .addComponent(jBSair))
            .addGap(45, 45, 45))
    );

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
    );

    pack();
}// </editor-fold>                        

private void jRMasculinoActionPerformed(java.awt.event.ActionEvent evt) {                                            
    jRFeminino.setSelected(false);
}                                           

private void jBLimparActionPerformed(java.awt.event.ActionEvent evt) {                                         
   jTNome.setText(null);
   jTTel.setText(null);
   jTCel.setText(null);
   jTEmail.setText(null);
   jTEnd.setText(null);
   jRMasculino.setSelected(false);
   jRFeminino.setSelected(false);
   jRCasado.setSelected(false);
   jRSolteiro.setSelected(false);

}                                        

private void jRFemininoActionPerformed(java.awt.event.ActionEvent evt) {                                           
    jRMasculino.setSelected(false);
}                                          

private void jRSolteiroActionPerformed(java.awt.event.ActionEvent evt) {                                           
    jRCasado.setSelected(false);
}                                          

private void jRCasadoActionPerformed(java.awt.event.ActionEvent evt) {                                         
   jRSolteiro.setSelected(false);
}                                        

private void jBSairActionPerformed(java.awt.event.ActionEvent evt) {                                       
    setVisible(false);
    dispose();
}                                      

private void jBCadastrarActionPerformed(java.awt.event.ActionEvent evt) {                                            
   try{
        String nome = jTNome.getText();
        int num = Integer.parseInt(jTTel.getText());
        int cel= Integer.parseInt(jTCel.getText());
        String email = jTEmail.getText();
        String end = jTEnd.getText();
        String sexo;
        String estCiv;
        if(jRMasculino.isSelected()== true){
            sexo = "Masculino";
        }else if(jRFeminino.isSelected() == true){
            sexo = "Feminino";
        }else{
             sexo = "Não informado";
        }
   
        if(jRCasado.isSelected() == true){
            estCiv = "Casado";
        }else if(jRSolteiro.isSelected() == true){
            estCiv = "Solteiro";
        }else{
            estCiv = "Não Informado";
        }
        Dado novo = new Dado(nome, num, cel, email, end, sexo, estCiv);
        if(a1.a.getRaiz() == null){
            a1.a.inserirRaiz(novo);
        }else{
            a1.a.inserir(a1.a.getRaiz(), novo);
        }
        JOptionPane.showMessageDialog(null,"Cadastro efetuado");
   }catch(Exception e){
       JOptionPane.showMessageDialog(null, "Erro na inserção:\n*Verifique se todos os campos são preenchidos.\n*Campos tel e cel so aceitão números");
   }finally{
        jTNome.setText(null);
        jTTel.setText(null);
        jTCel.setText(null);
        jTEmail.setText(null);
        jTEnd.setText(null);
        jRMasculino.setSelected(false);
        jRFeminino.setSelected(false);
        jRCasado.setSelected(false);
        jRSolteiro.setSelected(false);
        
   }
}                                           

/**
 * @param args the command line arguments
 */
public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {

        public void run() {
            new Cadastro().setVisible(true);
        }
    });
}
// Variables declaration - do not modify                     
private javax.swing.JButton jBCadastrar;
private javax.swing.JButton jBLimpar;
private javax.swing.JButton jBSair;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JPanel jPanel1;
private javax.swing.JRadioButton jRCasado;
private javax.swing.JRadioButton jRFeminino;
private javax.swing.JRadioButton jRMasculino;
private javax.swing.JRadioButton jRSolteiro;
private javax.swing.JTextField jTCel;
private javax.swing.JTextField jTEmail;
private javax.swing.JTextField jTEnd;
private javax.swing.JTextField jTNome;
private javax.swing.JTextField jTTel;
// End of variables declaration                   

}
[/code]

Alguem?