Pessoal, boa tarde!
Estou encaminhando abaixo o codigo só para voces terem uma ideia do que está acontecendo. já tentei tudo, o form pisca mas não fecha de jeito nenhum. é hiper irritante, porque estou com um projeto e não consigo andar por esse simples detalhe.
qualquer ajuda é bem vinda. estou usando uma classe de controle como segue abaixo:
package controle;
import visao.*;
import java.awt.event.*;
public class Controle {
private TelaPrincipal TP;
public Controle (TelaPrincipal TP) {
this.TP = TP;
this.TP.addMenuListener(new MenuListener());
}
class MenuListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if (e.getActionCommand().equals("Empresa"))
{
TelaEmpresa TE = new TelaEmpresa();
TE.addEmpresaListener(new EmpresaListener(TE));
}
}
}
class EmpresaListener implements ActionListener
{
private TelaEmpresa TE;
public EmpresaListener (TelaEmpresa TE){
this.TE = TE;
}
public void actionPerformed(ActionEvent e)
{
TelaEmpresa T = new TelaEmpresa();
if (e.getActionCommand().equals("Sair"))
{
T.fechaTela();
}
}
}
}
Será que dá pra ver algum erro, algo que justifique o que está acontecendo?
Dai a tela é formada pelo seguinte codigo:
package visao;
import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class TelaEmpresa {
private JFrame jFrame = null;
private JPanel jContentPane = null;
private JPanel jPanel = null;
private JPanel jPanel1 = null;
private JButton jButton4 = null;
private JLabel jLabel = null;
private JLabel jLabel1 = null;
private JTextField jTextField = null;
private JTextField jTextField1 = null;
public TelaEmpresa () {
getJFrame();
}
private JFrame getJFrame() {
if (jFrame == null) {
jFrame = new JFrame();
jFrame.setTitle("Empresa");
jFrame.setContentPane(getJContentPane());
jFrame.setSize(new Dimension(450, 221));
jFrame.setVisible(true);
}
return jFrame;
}
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJPanel(), null);
jContentPane.add(getJPanel1(), null);
}
return jContentPane;
}
private JPanel getJPanel() {
if (jPanel == null) {
jLabel1 = new JLabel();
jLabel1.setBounds(new Rectangle(86, 37, 38, 16));
jLabel1.setText("Valor");
jLabel = new JLabel();
jLabel.setBounds(new Rectangle(85, 11, 38, 16));
jLabel.setText("Cod");
jPanel = new JPanel();
jPanel.setLayout(null);
jPanel.setBounds(new Rectangle(29, 14, 408, 68));
jPanel.add(jLabel, null);
jPanel.add(jLabel1, null);
jPanel.add(getJTextField(), null);
jPanel.add(getJTextField1(), null);
}
return jPanel;
}
private JPanel getJPanel1() {
if (jPanel1 == null) {
jPanel1 = new JPanel();
jPanel1.setLayout(null);
jPanel1.setBounds(new Rectangle(28, 102, 432, 36));
jPanel1.add(getJButton4(), null);
}
return jPanel1;
}
private JButton getJButton4() {
if (jButton4 == null) {
jButton4 = new JButton();
jButton4.setBounds(new Rectangle(250, 4, 60, 26));
jButton4.setText("Sair");
}
return jButton4;
}
private JTextField getJTextField() {
if (jTextField == null) {
jTextField = new JTextField();
jTextField.setBounds(new Rectangle(136, 10, 171, 20));
}
return jTextField;
}
private JTextField getJTextField1() {
if (jTextField1 == null) {
jTextField1 = new JTextField();
jTextField1.setBounds(new Rectangle(135, 35, 174, 20));
}
return jTextField1;
}
public void fechaTela(){
this.jFrame.dispose();
}
public void addEmpresaListener (ActionListener l) {
jButton4.addActionListener(l);
}
}