[Dúvida] tela menu com erro. (Resolvido)

A minha situação é a seguinte:

Estou fazendo um trabalho de JAVA no netBeans (sou iniciante) e preciso fazer 4 telas sendo uma um menu paras outras.

A princípio as telas estão funcionando tranqüilamente mas…

No programa as outras telas possuem um botão para incluir as informações e outro pra consultar. Isso é feito através de uma classe “Banco” que cria um arquivo (banco.xxx) pra guardar as informações (tem que ser assim pois faz parte do trabalho) e outra classe “controle” que faz as ligações.

Tudo funciona muito bem a princípio, mas quando as telas estão com sua programação de incluir e de consultar, na tela menu a parte de “Nometela nometela = new Nometela();” Fica com erro (com relação a “throws Exception”).

Quando eu ponho pra puxar a tela direto na classe principal “main” é só eu por um “throws Exception” depois do “public static void main(String[] args) throws Exception{” que funciona tranqüilaço. Mas como eu faço pra isso funcionar a partir de um botão de uma tela?

São todas JFrame.

ps: precisando de mais explicações é só avisar. Mas preciso disso pra até hoje (30/11/10) à noite. Só falta isso pro meu programa.

Oi Bruno,

O pessoal vai querer ver seus códigos,poste as classes com erro entre as tags Code… :wink:

Um dos botões que leva para outra tela está assim:

"
private void btnContaSimplesActionPerformed(java.awt.event.ActionEvent evt) {

[color=red]TelaContaSimples tcs = new TelaContaSimples();[/color]

tcs.setVisible(true);

dispose();
}

"

Minha dúvida é: Se fosse direto da classe principal eu colocava um “throws Exception” depois do “public statc void main…” e funcionaria. Mas a partir de um botão. Como eu poderia fazer? Já pus “throw Exception” em tudo que é canto e nada.

Não sei por que mas sempre aparece alguém aq com essa dificuldade,acho tão simples…



private void btnContaSimplesActionPerformed(java.awt.event.ActionEvent evt) {


   new TelaContaSimples().setVisible(true);
   dispose();
            
}

Seu projeto é web ou desktop…

Da uma olhada aqui,o código esta bem comentado. http://www.guj.com.br/posts/list/215775.java#1100524

Desktop. Bem simples. Trabalho pra matéria na faculdade.

E dessa forma aí acabou dando o mesmo erro “unreported exception java.lang.Exception; must be caught or declared to be thrown”. Mas agora é nessa linha “new Tela…”

Só lembrando que sem aquele código de “banco e controle” pros botões “incluir e consultar” das outras telas (que são direcionadas por esse menu) esse código que eu postei funciona perfeitamente.

E mesmo com esse código, quando eu ponho esse código direto da classe principal, eu só adiciono um “throws Exception” depois do “public statc void main…” e funciona.

Suspeito eu que pra chamar essa tela por essa outra tela menu, eu teria que por um “throws Exception” em algum canto. Só não faço idéia de onde.

e lembrando também que é tudo JFrame. Será que fazendo as outras telas como JPane (a não ser a menu) não funciona?

Coloque seu código completo,por favor.
Desculpe,mas esta dificil te ajudar… :roll:

Vixe. Vou ver se ponho os mais relevantes (já que alguns se repetem). Só lembrando que a forma com que estou fazendo é a forma pedida pelo trabalho. E as importações estão corrigidas.

Classe Banco:

public class Banco {
Map<String, ContaSimples> tabelaCs;
Map<String, ContaEspecial> tabelaCe;
Map<String, ContaPoupanca> tabelaCp;
private File arquivo;
public void incluirCs (ContaSimples cs) {
tabelaCs.put(cs.getNumConta(), cs);
}
public void incluirCe (ContaEspecial ce) {
tabelaCe.put(ce.getNumConta(), ce);
}
public void incluirCp (ContaPoupanca cp) {
tabelaCp.put(cp.getNumConta(), cp);
}

public ContaSimples consultarCs (String numConta) {
    return tabelaCs.get(numConta);
}
public ContaEspecial consultarCe (String numConta) {
    return tabelaCe.get(numConta);
}
public ContaPoupanca consultarCp (String numConta) {
    return tabelaCp.get(numConta);
}
public Banco() throws Exception{
    arquivo = new File("banco.xxx");
    if(!arquivo.exists()){
        tabelaCs = new HashMap<String, ContaSimples>();
        tabelaCe = new HashMap<String, ContaEspecial>();
        tabelaCp = new HashMap<String, ContaPoupanca>();
    }
    else{
        FileInputStream fluxoArquivo = new FileInputStream(arquivo);
        ObjectInputStream fluxoObjeto = new ObjectInputStream(fluxoArquivo);
        tabelaCs = (Map<String, ContaSimples>) fluxoObjeto.readObject();
        tabelaCe = (Map<String, ContaEspecial>) fluxoObjeto.readObject();
        tabelaCp = (Map<String, ContaPoupanca>) fluxoObjeto.readObject();
        fluxoObjeto.close();
    }

}

public void fechar() throws Exception{
    FileOutputStream fluxoArquivo = new FileOutputStream (arquivo);
    ObjectOutputStream fluxoObjeto = new ObjectOutputStream (fluxoArquivo);
    fluxoObjeto.writeObject(tabelaCs);
    fluxoObjeto.writeObject(tabelaCe);
    fluxoObjeto.writeObject(tabelaCp);
    fluxoObjeto.close();
}

}


classe controle:

public class Controle {
private Banco banco;
public Controle() throws Exception{
banco = new Banco();
}

public void incluirCs(String nome, String numConta, String saldo, String tempoDeConta) {
    ContaSimples cs = new ContaSimples();
    cs.setNome(nome);
    cs.setNumConta(numConta);
    cs.setSaldo(saldo);
    cs.setTempoDeConta(tempoDeConta);
    banco.incluirCs(cs);
}
public void incluirCe(String nome, String numConta, String saldo, String tempoDeConta, String limite) {
    ContaEspecial ce = new ContaEspecial();
    ce.setNome(nome);
    ce.setNumConta(numConta);
    ce.setSaldo(saldo);
    ce.setTempoDeConta(tempoDeConta);
    ce.setLimite(limite);
    banco.incluirCe(ce);
}
public void incluirCp(String nome, String numConta, String saldo, String tempoDeConta, String taxa) {
    ContaPoupanca cp = new ContaPoupanca();
    cp.setNome(nome);
    cp.setNumConta(numConta);
    cp.setSaldo(saldo);
    cp.setTempoDeConta(tempoDeConta);
    cp.setTaxa(taxa);
    banco.incluirCp(cp);
}
public List<String> consultarCs (String numConta) {
    List<String> campos = new ArrayList<String>();
    ContaSimples cs = banco.consultarCs(numConta);
    campos.add(cs.getNome());
    campos.add(cs.getNumConta());
    campos.add(cs.getSaldo());
    campos.add(cs.getTempoDeConta());
    return campos;
}
public List<String> consultarCe (String numConta) {
    List<String> campos = new ArrayList<String>();
    ContaEspecial ce = banco.consultarCe(numConta);
    campos.add(ce.getNome());
    campos.add(ce.getNumConta());
    campos.add(ce.getSaldo());
    campos.add(ce.getTempoDeConta());
    campos.add(ce.getLimite());
    return campos;
}
public List<String> consultarCp (String numConta) {
    List<String> campos = new ArrayList<String>();
    ContaPoupanca cp = banco.consultarCp(numConta);
    campos.add(cp.getNome());
    campos.add(cp.getNumConta());
    campos.add(cp.getSaldo());
    campos.add(cp.getTempoDeConta());
    campos.add(cp.getTaxa());
    return campos;
}

public void sair() throws Exception{
    banco.fechar();
}

}


JFrapme TelaContaSimples:

public class TelaContaSimples extends javax.swing.JFrame {

/** Creates new form TelaContaSimples */
public TelaContaSimples() throws Exception{
    initComponents();
    controle = new Controle();
}

/** This method is called from within the constructor to
 * initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is
 * always regenerated by the Form Editor.
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    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();
    txtNome = new javax.swing.JTextField();
    txtNumConta = new javax.swing.JTextField();
    txtSaldo = new javax.swing.JTextField();
    txtTempoDeCasa = new javax.swing.JTextField();
    btnInformar = new javax.swing.JButton();
    btnIncluir = new javax.swing.JButton();
    btnConsultar = new javax.swing.JButton();
    btnSair = new javax.swing.JButton();
    lblSaldoTotal = new javax.swing.JLabel();
    btnLimpar = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jLabel1.setText("Nome:");

    jLabel2.setText("Número da Conta:");

    jLabel3.setText("Saldo Total:");

    jLabel4.setText("Saldo:");

    jLabel5.setText("Tempo de Casa:");

    btnInformar.setText("Informar");
    btnInformar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnInformarActionPerformed(evt);
        }
    });

    btnIncluir.setText("Incluir");
    btnIncluir.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnIncluirActionPerformed(evt);
        }
    });

    btnConsultar.setText("Consultar");
    btnConsultar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnConsultarActionPerformed(evt);
        }
    });

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

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

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addContainerGap()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addComponent(jLabel3)
                        .addComponent(jLabel4)
                        .addComponent(jLabel2)
                        .addComponent(jLabel1)
                        .addComponent(jLabel5))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(lblSaldoTotal)
                        .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(txtNumConta, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(txtSaldo, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(txtTempoDeCasa, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(btnLimpar)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(btnInformar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnIncluir)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnConsultar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnSair))))
            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addContainerGap()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel1)
                .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel2)
                .addComponent(txtNumConta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel4)
                .addComponent(txtSaldo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel5)
                .addComponent(txtTempoDeCasa, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel3)
                .addComponent(lblSaldoTotal))
            .addGap(4, 4, 4)
            .addComponent(btnLimpar)
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(btnInformar)
                .addComponent(btnIncluir)
                .addComponent(btnConsultar)
                .addComponent(btnSair))
            .addContainerGap(35, Short.MAX_VALUE))
    );

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

private void btnSairActionPerformed(java.awt.event.ActionEvent evt) {                                        

dispose();
}

private void btnInformarActionPerformed(java.awt.event.ActionEvent evt) {                                            

lblSaldoTotal.setText(txtSaldo.getText());
}

private void btnIncluirActionPerformed(java.awt.event.ActionEvent evt) {                                           

try{
controle.incluirCs(txtNome.getText(), txtNumConta.getText(),txtSaldo.getText(), txtTempoDeCasa.getText());
}
catch(Exception e){
JOptionPane.showMessageDialog(null, “Erro”);
}
}

private void btnConsultarActionPerformed(java.awt.event.ActionEvent evt) {                                             

List aux;
String numConta = JOptionPane.showInputDialog(“Entre com o Número da conta”);
aux = controle.consultarCs(numConta);
txtNome.setText(aux.get(0));
txtNumConta.setText(aux.get(1));
txtSaldo.setText(aux.get(2));
txtTempoDeCasa.setText(aux.get(3));

lblSaldoTotal.setText(txtSaldo.getText());
}

private void btnLimparActionPerformed(java.awt.event.ActionEvent evt) {                                          

txtNome.setText("");
txtNumConta.setText("");
txtSaldo.setText("");
txtTempoDeCasa.setText("");
lblSaldoTotal.setText("");
}

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

// Variables declaration - do not modify                     
private javax.swing.JButton btnConsultar;
private javax.swing.JButton btnIncluir;
private javax.swing.JButton btnInformar;
private javax.swing.JButton btnLimpar;
private javax.swing.JButton btnSair;
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 lblSaldoTotal;
private javax.swing.JTextField txtNome;
private javax.swing.JTextField txtNumConta;
private javax.swing.JTextField txtSaldo;
private javax.swing.JTextField txtTempoDeCasa;
// End of variables declaration                   

private Controle controle;

}


JFrame Tela (A tela menu):

public class Tela extends javax.swing.JFrame {

/** Creates new form Tela */
public Tela() throws Exception{
    initComponents();


}




/** This method is called from within the constructor to
 * initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is
 * always regenerated by the Form Editor.
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    btnContaSimples = new javax.swing.JButton();
    btnSair = new javax.swing.JButton();
    lblErro = new javax.swing.JLabel();
    btnContaEspecial = new javax.swing.JButton();
    btnContaPoupanca = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    btnContaSimples.setText("Conta Simples");
    btnContaSimples.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnContaSimplesActionPerformed(evt);
        }
    });

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

    lblErro.setForeground(new java.awt.Color(255, 0, 0));

    btnContaEspecial.setText("Conta Especial");
    btnContaEspecial.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnContaEspecialActionPerformed(evt);
        }
    });

    btnContaPoupanca.setText("Conta Poupança");
    btnContaPoupanca.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnContaPoupancaActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addGap(157, 157, 157)
            .addComponent(lblErro)
            .addContainerGap(153, Short.MAX_VALUE))
        .addGroup(layout.createSequentialGroup()
            .addGap(35, 35, 35)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                .addGroup(layout.createSequentialGroup()
                    .addComponent(btnContaPoupanca)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(btnSair))
                .addGroup(layout.createSequentialGroup()
                    .addComponent(btnContaSimples)
                    .addGap(36, 36, 36)
                    .addComponent(btnContaEspecial)))
            .addContainerGap(37, Short.MAX_VALUE))
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addGap(32, 32, 32)
            .addComponent(lblErro)
            .addGap(23, 23, 23)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(btnContaSimples)
                .addComponent(btnContaEspecial))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 79, Short.MAX_VALUE)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(btnContaPoupanca)
                .addComponent(btnSair))
            .addGap(60, 60, 60))
    );

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

private void btnContaSimplesActionPerformed(java.awt.event.ActionEvent evt) {                                                

[color=red]TelaContaSimples tcs = new TelaContaSimples();[/color]

tcs.setVisible(true);

dispose();
}

private void btnContaEspecialActionPerformed(java.awt.event.ActionEvent evt) {                                                 

[color=red]TelaContaEspecial tce = new TelaContaEspecial();[/color]

tce.setVisible(true);

dispose();
}

private void btnContaPoupancaActionPerformed(java.awt.event.ActionEvent evt) {                                                 

[color=red]TelaContaPoupanca tcp = new TelaContaPoupanca();[/color]

tcp.setVisible(true);

dispose();
}

private void btnSairActionPerformed(java.awt.event.ActionEvent evt) {                                        

dispose();
}

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

        }
    });
}

// Variables declaration - do not modify                     
private javax.swing.JButton btnContaEspecial;
private javax.swing.JButton btnContaPoupanca;
private javax.swing.JButton btnContaSimples;
private javax.swing.JButton btnSair;
private javax.swing.JLabel lblErro;
// End of variables declaration                   

}

Nossa,tinha entendido que o erro era na tela de login… :oops:


public class Tela extends javax.swing.JFrame {


/** Creates new form Tela */
public Tela() throws Exception{
initComponents();


}




/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

btnContaSimples = new javax.swing.JButton();
btnSair = new javax.swing.JButton();
lblErro = new javax.swing.JLabel();
btnContaEspecial = new javax.swing.JButton();
btnContaPoupanca = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

btnContaSimples.setText("Conta Simples");
btnContaSimples.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnContaSimplesActionPerformed(evt);
}
});

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

lblErro.setForeground(new java.awt.Color(255, 0, 0));

btnContaEspecial.setText("Conta Especial");
btnContaEspecial.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnContaEspecialActionPerformed(evt);
}
});

btnContaPoupanca.setText("Conta Poupança");
btnContaPoupanca.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnContaPoupancaActionPerformed(evt);
}
});

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(157, 157, 157)
.addComponent(lblErro)
.addContainerGap(153, Short.MAX_VALUE))
.addGroup(layout.createSequentialGroup()
.addGap(35, 35, 35)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addGroup(layout.createSequentialGroup()
.addComponent(btnContaPoupanca)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnSair))
.addGroup(layout.createSequentialGroup()
.addComponent(btnContaSimples)
.addGap(36, 36, 36)
.addComponent(btnContaEspecial)))
.addContainerGap(37, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(32, 32, 32)
.addComponent(lblErro)
.addGap(23, 23, 23)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnContaSimples)
.addComponent(btnContaEspecial))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 79, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnContaPoupanca)
.addComponent(btnSair))
.addGap(60, 60, 60))
);

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

private void btnContaSimplesActionPerformed(java.awt.event.ActionEvent evt) {


[color=red]TelaContaSimples tcs = new TelaContaSimples();[color]

tcs.setVisible(true);


dispose();
}

private void btnContaEspecialActionPerformed(java.awt.event.ActionEvent evt) {
[color=red]TelaContaEspecial tce = new TelaContaEspecial();[color]

tce.setVisible(true);

dispose();
}

private void btnContaPoupancaActionPerformed(java.awt.event.ActionEvent evt) {
[color=red]TelaContaPoupanca tcp = new TelaContaPoupanca();[color]

tcp.setVisible(true);

dispose();
}

private void btnSairActionPerformed(java.awt.event.ActionEvent evt) {
dispose();
}

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

}
});
}

// Variables declaration - do not modify
private javax.swing.JButton btnContaEspecial;
private javax.swing.JButton btnContaPoupanca;
private javax.swing.JButton btnContaSimples;
private javax.swing.JButton btnSair;
private javax.swing.JLabel lblErro;
// End of variables declaration

} 

Fala cara… estude tratamento de exceções…

try {
    Tela tela = new Tela();
} catch(Exception e) {
    // Trata aqui...
}

Adicionei esse código extra que você passou e: não deu nenhum erro novo (nem nas linhas que você passou) mas o erro continua (por curiosidade agora ele informa duas linhas iguais de erro na mesma linha de programação (quando deicha o mouse encima), não sei se é relevante).

Se eu por o mesmo código na classe principal(main) e tentar rodar a tela direto (sem passar por esse menu) ela roda normalmente. com esse código na principal:

"
public static void main(String[] args) throws Exception{

    TelaContaSimples tcs = new TelaContaSimples();
        tcs.setVisible(true);

"

Se eu tirar aquele "throws Exception da erro também, mas com ele roda normal. Por isso que acho que pra rodar isso a partir do botão da tela menu eu teria que por “throws Exception” em algum canto.

me mostra como ficou…

Quando você chama o método main e relança a exceção, você manda ela pro espaço, porque o main é o método mais baixo na pilha de chamadas da Thread principal… Isso é uma má prática, você sempre deve tratar a exceção…

Não sei porque seu conctrutor lança uma Exception, mas só há um jeito de tratar e é assim… manda o código como ficou quando incluíste o try{} catch(){}

Abs[]

Cara… mais uma coisa, coloque seus códigos dentro da tag [ CODE ] [ /CODE ]

Abs []

adriano. Funcionou perfeitamente. Muuuuuuiiiiiiiitoooooooo obrigado. Era só isso mesmo. Acabou minha tortura.

E muito obrigado a você também Anime. Talvez você não tenha conseguido ajudar por não ter entendido muito bem o problema mas agradeço muito mesmo pela sua paciência.

E desculpe. Não sabia dessa TAG.

Oi,

Fico feliz,por ter dado certo… :wink:

Blz cara… Mas estuda sobre tratamento de exceções…

Não adianta ter dado certo e você não entender o porque… Aqui nos artigos do GUJ tem um material simples e prático sobre Tratamento de Exceções…

Coloque RESOLVIDO no título do Post.

Abs []

Beleza. Vou estudar sim. Mas eu entendi o que esse código que você passou quis dizer. Pus até um JOptionPane pra mensagem de erro na exceção. Na verdade eu já tinha usado esse “Try” em outra parte mas lá sim eu não sabia o significado. Graças a sua dica eu aprendi o que significa esse código.

E anime. Também fico muito feliz por ter dado certo. :smiley: