Eventos utilizando objetos instanciados de outras classes

Boa noite, estão desenvolvendo um sistema com telas dinâmicas, onde um a é acessada através do objeto da outra:

Tenho três classes: Pessoa, Usuario e TelaCadastrar

[code]import java.awt.;
import java.awt.event.
;
import javax.swing.*;

public class Pessoa extends JFrame{
setSize(981, 623);
setVisible(true);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Usuario u;
public Pessoa{
//pessoa, um JFrame que tem um TabbedPane e adiciona o conteudo da instancia Usuario:

JTabbedPane pessoa = new JTabbedPane();
usuario = new JPanel();
pessoa.addTab(“USUÁRIO”, null, usuario, null);
usuario.setLayout(new GridLayout(1, 1));
usuario.add(u.conteudo);
}
}[/code]

[code]
public Usuario extends JPanel{

JPanel conteudo;
JButton cadastrarUsuario;
TelaCadastrar tcp;
Pessoa tpe;

public Usuario(){

conteudo = new JPanel();

cadastrarUsuario = new JButton("CADASTRAR");
	cadastrarUsuario.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent evt) {
			tcp = new TelaCadastrar();
			 tpe = new Pessoa();
			 tpe.tp.conteudoPaciente.removeAll();
			 conteudoPaciente.add(tcp.Cadastro);
			 tcp.Cadastro.setVisible(true);
			 tpe.validate();
				}});

conteudo.add(cadastrarUsuario);

}
}[/code]

[code]public TelaCadastrar extends JPanel{

TelaCadastrar(){

// código de um formulário cadastrar Usuario.

}
}[/code]

Quando o usuario clicar no botão Cadastrar, exibirá o formulario cadastral

Dinâmicamente, o sistema irá trocar a tela Usuario pela TelaCadastrar dentro da classe Pessoa, porem, o código dentro do ActionListener não funciona, seria um caso de tornar minhas classes staticas??

Olá LucasVilarim,
nao sei se é isso, mas no action listener vc está setando o tpe como new Pessoa(), tpe = new Pessoa(); dessa forma vc não se referencia a classe Pessoa que já está aberta. A action deveria, a meu ver, chamar o frame principal que já está instanciado e não uma nova instancia desse frame. Acho que já vi discussoes parecidas aqui no GUJ… mas nao me recordo a chave de busca que usei.
Lembro de ter consultado esse fórum, onde o ViniGodoy postou um exemplo da comunicação entre objetos. Talvez possa te ajudar:
http://www.guj.com.br/java/55710-jdialog-devolvendo-valor-pra-jinternalframe#292687

Opa muito obrigado cara, ajudo sim!!!