Tratamento de eventos

Boa noite,

estou “tentando” fazer um projeto em java, que basicamente é uma árvore com interface gráfica e tem muito que aprimorar ainda.

empaquei quando não consigo na linha 63 da classe telaprincipal mostrar a árvore cujo dados foram inseridos na telaInserçaoAlunos

segue código abaixo.

Desde já agradeço

[code]import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JLabel;

import com.jgoodies.forms.factories.DefaultComponentFactory;

public class TelaPrincipal {

private JFrame frame;

/**
 * Launch the application.
 */
public static void main(String[] args) {
	EventQueue.invokeLater(new Runnable() {
		public void run() {
			try {
				TelaPrincipal window = new TelaPrincipal();
				window.frame.setVisible(true);
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	});
}

/**
 * Create the application.
 */
public TelaPrincipal() {
	initialize();
}

/**
 * Initialize the contents of the frame.
 */
private void initialize() {
	frame = new JFrame();
	frame.setBounds(100, 100, 450, 300);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.getContentPane().setLayout(null);
	
	JButton btnInserirAluno = new JButton("Inserir Aluno na \u00C1rvore");
	btnInserirAluno.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent arg0) {
			TelaInserçaoAluno t1 = new TelaInserçaoAluno();
			t1.setVisible(true);
		}
	});
	btnInserirAluno.setBounds(125, 81, 190, 23);
	frame.getContentPane().add(btnInserirAluno);
	
	
	JButton btnRemoverAluno = new JButton("Remover Aluno da \u00C1rvore");
	btnRemoverAluno.setBounds(125, 115, 190, 23);
	frame.getContentPane().add(btnRemoverAluno);
	
	JButton btnMostrarArvore = new JButton("Mostrar \u00C1rvore");
	btnMostrarArvore.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent arg0) {
			
		}
	});
	btnMostrarArvore.setBounds(125, 183, 190, 23);
	frame.getContentPane().add(btnMostrarArvore);
	
	JButton btnBuscarAluno = new JButton("Buscar Aluno");
	btnBuscarAluno.setBounds(125, 149, 190, 23);
	frame.getContentPane().add(btnBuscarAluno);
	
	JButton btnSair = new JButton("Sair");
	btnSair.setBounds(125, 217, 190, 23);
	frame.getContentPane().add(btnSair);
	
	JLabel lblQualOperaoDeseja = new JLabel("Qual opera\u00E7\u00E3o deseja realizar na sua \u00C1rvore de Alunos?");
	lblQualOperaoDeseja.setBounds(67, 45, 333, 25);
	frame.getContentPane().add(lblQualOperaoDeseja);
	
	JLabel lblrvoreDeAlunos = DefaultComponentFactory.getInstance().createTitle("\u00C1rvore de Alunos");
	lblrvoreDeAlunos.setBounds(154, 11, 124, 14);
	frame.getContentPane().add(lblrvoreDeAlunos);
}

}
[/code]

[code]import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JComboBox;
import javax.swing.JButton;

public class TelaInserçaoAluno extends JFrame {

private JPanel contentPane;
private JTextField nomeText;
private JTextField matriculaText;
private JTextField cursoText;
private JTextField cpfText;
private int qtdAlunos;

/**
 * Launch the application.
 */
public static void main(String[] args) {
	EventQueue.invokeLater(new Runnable() {
		public void run() {
			try {
				TelaInserçaoAluno frame = new TelaInserçaoAluno();
				frame.setVisible(true);
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	});
}

/**
 * Create the frame.
 */
public TelaInserçaoAluno() {
	

	

	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	setBounds(100, 100, 450, 300);
	contentPane = new JPanel();
	contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
	setContentPane(contentPane);
	contentPane.setLayout(null);
	
	JLabel label = new JLabel("Nome:");
	label.setBounds(29, 43, 64, 14);
	contentPane.add(label);
	
	nomeText = new JTextField();
	nomeText.setColumns(10);
	nomeText.setBounds(110, 40, 236, 20);
	contentPane.add(nomeText);
	
	matriculaText = new JTextField(10);
	matriculaText.setText("0");
	matriculaText.setBounds(110, 139, 130, 20);
	contentPane.add(matriculaText);
	matriculaText.setText(String.valueOf(0)); 
			
	cursoText = new JTextField();
	cursoText.setColumns(10);
	cursoText.setBounds(110, 175, 219, 20);
	contentPane.add(cursoText);
	
	
	cpfText = new JTextField();
	cpfText.setColumns(10);
	cpfText.setBounds(110, 71, 130, 20);
	contentPane.add(cpfText);
	
	
	JLabel label_1 = new JLabel("Cpf:");
	label_1.setBounds(29, 72, 64, 14);
	contentPane.add(label_1);
	
	JLabel label_2 = new JLabel("Idade:");
	label_2.setBounds(29, 107, 64, 14);
	contentPane.add(label_2);
	
	final JComboBox idadeCombo = new JComboBox();
	idadeCombo.setBounds(110, 104, 42, 20);
	idadeCombo.setModel(new DefaultComboBoxModel(new String[] {"18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70"}));
	contentPane.add(idadeCombo);
	
	
	JLabel label_3 = new JLabel("Matricula:");
	label_3.setBounds(29, 142, 64, 14);
	contentPane.add(label_3);
	
	JLabel label_4 = new JLabel("Curso:");
	label_4.setBounds(29, 178, 64, 14);
	contentPane.add(label_4);
	
	JButton previzualizar = new JButton("Pr\u00E9 vizualiza\u00E7\u00E3o");
	previzualizar.setBounds(19, 228, 133, 23);
	previzualizar.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent arg0) {
			
			
			JOptionPane.showMessageDialog(null,"Pré-vizualização:  "+"\n"+"\n" + "Nome: " + nomeText.getText() +"\n" +
	        		"CPF: " + cpfText.getText() +"\n" + "Idade: " + Integer.parseInt((String) idadeCombo.getSelectedItem()) +"\n" +
	        		"Matricula: " +Integer.parseInt(matriculaText.getText()) +"\n" + "Curso: " + cursoText.getText() +"\n");
			
		}
	});
	contentPane.add(previzualizar);
	
	JButton salvar = new JButton("Salvar");
	salvar.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent arg0) {
			
			Aluno a1 = new Aluno();
			No no = new No(a1);
			Arvore arvoreBinaria = new Arvore();

			a1.setNome(nomeText.getText());
			a1.setCpf(cpfText.getText());
			a1.setIdade(Integer.parseInt((String)idadeCombo.getSelectedItem()));
			a1.setMatricula(Integer.parseInt(matriculaText.getText()));
			a1.setCurso(cursoText.getText());
			arvoreBinaria.inserirAluno(no);
			qtdAlunos++;
		}
	});
	salvar.setBounds(172, 228, 116, 23);
	contentPane.add(salvar);
	
	JButton cancelar = new JButton("Cancelar");
	cancelar.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent arg0) {
			TelaInserçaoAluno.this.dispose();
		}
	});
	cancelar.setBounds(308, 228, 116, 23);
	contentPane.add(cancelar);
	
	
	
}

}
[/code]

[code]import javax.swing.JOptionPane;

public class Arvore {

private No raiz;
private Arvore direita;
private Arvore esquerda;


   public void inserirAluno(No no) {
        if (this.raiz == null) {
            this.raiz = no;
        } else {
            if (no.getAluno().getMatricula() > this.raiz.getAluno().getMatricula()) {
                if (this.direita == null) {
                    this.direita = new Arvore();
                }
                this.direita.inserirAluno(no);
            } else if (no.getAluno().getMatricula() < this.raiz.getAluno().getMatricula()) {
                if (this.esquerda == null) {
                    this.esquerda = new Arvore();
                }
                this.esquerda.inserirAluno(no);
            }
        }
    }
 
    public void percorrerArvore() {
        if (this.raiz == null) {
           return;
        }
 
        if (this.esquerda != null) {
            this.esquerda.percorrerArvore();
        }
 
        
        JOptionPane.showMessageDialog(null, "Nome: " + this.raiz.getAluno().getNome() +"\n" +
        		"CPF: " + this.raiz.getAluno().getCpf() +"\n" + "Idade: " + this.raiz.getAluno().getIdade() +"\n" +
        		"Matricula: " + this.raiz.getAluno().getMatricula() +"\n" + "Curso: " + this.raiz.getAluno().getCurso() +"\n");
        
        if (this.direita != null) {
            this.direita.percorrerArvore();
        }
    }
 
    
    public void percorrerArvoreGrafico() {
        if (this.raiz == null) {
           return;
        }
 
        if (this.esquerda != null) {
            this.esquerda.percorrerArvore();
        }
 
        
        JOptionPane.showMessageDialog(null, "Matricula: " + this.raiz.getAluno().getMatricula() +"\n");
        
        if (this.direita != null) {
            this.direita.percorrerArvore();
        }
    }
   
    public Aluno busca(int matricula) {
        if (this.raiz == null) {
            return null;
        } else {
            if (matricula == this.raiz.getAluno().getMatricula()) {
                return this.raiz.getAluno();
            } else {
                if (matricula > this.raiz.getAluno().getMatricula()) {
                    if (this.direita == null) {
                        return null;
                    }
                    return this.direita.busca(matricula);
                } else {
                    if (this.esquerda == null) {
                        return null;
                    }
                    return this.esquerda.busca(matricula);
                }
            }
        }
        
    }
    
    public No getRaiz() {
		return raiz;
	}

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

	public Arvore getDireita() {
		return direita;
	}

	public void setDireita(Arvore direita) {
		this.direita = direita;
	}

	public Arvore getEsquerda() {
		return esquerda;
	}

	public void setEsquerda(Arvore esquerda) {
		this.esquerda = esquerda;
	}

}

 [/code]