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??