Meu código não roda

5 respostas
P
Antes meu código rodava, mas agora não funciona. O que pode estar errado:
import java.awt.*;
import java.awt.event.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.*;

import javax.swing.*;
	
	public class CadCli extends JFrame{
		private JButton btngravar,btncancelar,btnimprimir,btnexcluir,btnsair;
		private JPanel pnlgravar,pnlcancelar,pnlimprimir,
		               pnlexcluir, pnlsair;
		private JLabel lblnome,lblendereco,lblbairro,lbluf,
		               lblcidade,lblfone,lblcel,lblemail,
		               lblcep,lblrg,lblcpf;
		private JTextField ednome,edendereco,edbairro,eduf,
		        edcidade,edfone,edcel,edemail,edcep,edrg,edcpf;
	public CadCli(){
		super("Cadastro de Clientes");
		
		btngravar   = new JButton("Gravar");
		btncancelar = new JButton("Cancelar");
		btnexcluir  = new JButton("Excluir");
		btnimprimir = new JButton("Imprimir");
		btnsair     = new JButton("Sair");
		
		lblnome     = new JLabel("Nome");
		lblendereco = new JLabel("Endereço");
		lblbairro   = new JLabel("Bairro");
		lblcel      = new JLabel("Celular");
		lblcidade   = new JLabel("Cidade");
		lbluf       = new JLabel("UF");		
		lblfone     = new JLabel("Telefone");		
		lblemail    = new JLabel("Email");
		lblcep      = new JLabel("CEP");
		lblrg       = new JLabel("RG");
		lblcpf      = new JLabel("CPF");
		
		ednome      = new JTextField(50);
		edendereco  = new JTextField(50);
		edbairro    = new JTextField(30);
		edcep       = new JTextField(10);
		edcidade    = new JTextField(30);
		eduf        = new JTextField(2);		
		edfone      = new JTextField(12);
		edcel       = new JTextField(12);
		edemail     = new JTextField(50);		
		edrg        = new JTextField(18);
		edcpf       = new JTextField(18);
		           }
	public void init(){
		ButtonHandler bh = new ButtonHandler();
		getContentPane().setLayout(new GridLayout(1,0));
		setSize(800,600);
		setLocation(100, 100);
		
		pnlgravar   = new JPanel();
		pnlcancelar = new JPanel();
		pnlimprimir = new JPanel();
		pnlexcluir  = new JPanel();
		pnlsair     = new JPanel();
		
		pnlgravar.add(btngravar);
		pnlcancelar.add(btncancelar);
		pnlimprimir.add(btnimprimir);
		pnlexcluir.add(btnexcluir);
		pnlsair.add(btnsair);
		
		btngravar.addActionListener(bh);
		btncancelar.addActionListener(bh);
		btnimprimir.addActionListener(bh);
		btnexcluir.addActionListener(bh);
		btnsair.addActionListener(bh);
		getContentPane().add(pnlgravar);
		getContentPane().add(pnlcancelar);
		getContentPane().add(pnlimprimir);
		getContentPane().add(pnlexcluir);
		getContentPane().add(pnlsair);
		setVisible(true);
	                  }
	class ButtonHandler implements ActionListener
	{
		public void actionPerformed(ActionEvent ae)
		{
			if (ae.getSource() == sair)
			{
				System.exit(0);
			}
		}
	}
	
	public static void main(String[] args) {
		new CadCli().init();
	                                       }
}
	getContentPane().add(pnlsair);
		setVisible(true);
	                  }
	class ButtonHandler implements ActionListener
	{
		public void actionPerformed(ActionEvent ae)
		{
			if (ae.getSource() == btnsair)
			{
				System.exit(0);
			}
		}
	}
	
	public static void main(String[] args) {
		new CadCli().init();
	                                       }
}

5 Respostas

D

Seja mais especifico…

aparece algum erro de compilação? erro quando executa o programa?

:wink:

E

Cara, você colocou dois métodos main (Linhas 93 e 111) e tem duas classes internas ButtonHandler (Linhas 82 e 100) a da linha 82 ainda está errado.

A

qual IDE vc está utilizando amigo??

L

Cara, alem de ter dois metodos main como o Evandro falou da uma olhada nessas chaves que acho que tem alguma coisa errada.
Dando um olhada por cima aqui, tô com a impressao que a parte do codigo abaixo não esta dentro de nenhum metodo e sim direto na classe:

getContentPane().add(pnlsair);

setVisible(true);

Esses 2 if acho que não vão funcionar como está também não.

linha 86 if (ae.getSource() == sair)
linha 104 if (ae.getSource() == btnsair)

pelo que me lembro getSource retorna um Object, da uma olhada nessas comparações que vc tá fazendo.

Tô meio ocupado agora, mas se tiver um tempinho depois volto aqui e coloco seu codigo no eclipse para dar uma olhada com mais calma.

Abraço chefe.

E

Tenta com esse codigo, fiz algumas alterações e peço que voce compare com o seu codigo para entender as alterações, eu utilizei o netbeans para revisar o seu codigo:

package testes;


import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

	public class CadCli extends JFrame{
		private JButton btngravar,btncancelar,btnimprimir,btnexcluir,btnsair;
		private JPanel pnlgravar,pnlcancelar,pnlimprimir,
		               pnlexcluir, pnlsair;
		private JLabel lblnome,lblendereco,lblbairro,lbluf,
		               lblcidade,lblfone,lblcel,lblemail,
		               lblcep,lblrg,lblcpf;
		private JTextField ednome,edendereco,edbairro,eduf,
		        edcidade,edfone,edcel,edemail,edcep,edrg,edcpf;
	public CadCli(){
		super("Cadastro de Clientes");

		btngravar   = new JButton("Gravar");
		btncancelar = new JButton("Cancelar");
		btnexcluir  = new JButton("Excluir");
		btnimprimir = new JButton("Imprimir");
		btnsair     = new JButton("Sair");

		lblnome     = new JLabel("Nome");
		lblendereco = new JLabel("Endereço");
		lblbairro   = new JLabel("Bairro");
		lblcel      = new JLabel("Celular");
		lblcidade   = new JLabel("Cidade");
		lbluf       = new JLabel("UF");
		lblfone     = new JLabel("Telefone");
		lblemail    = new JLabel("Email");
		lblcep      = new JLabel("CEP");
		lblrg       = new JLabel("RG");
		lblcpf      = new JLabel("CPF");

		ednome      = new JTextField(50);
		edendereco  = new JTextField(50);
		edbairro    = new JTextField(30);
		edcep       = new JTextField(10);
		edcidade    = new JTextField(30);
		eduf        = new JTextField(2);
		edfone      = new JTextField(12);
		edcel       = new JTextField(12);
		edemail     = new JTextField(50);
		edrg        = new JTextField(18);
		edcpf       = new JTextField(18);
		           }
	public void init(){
		ButtonHandler bh = new ButtonHandler();
		getContentPane().setLayout(new GridLayout(1,0));
		setSize(800,600);
		setLocation(100, 100);

		pnlgravar   = new JPanel();
		pnlcancelar = new JPanel();
		pnlimprimir = new JPanel();
		pnlexcluir  = new JPanel();
		pnlsair     = new JPanel();

		pnlgravar.add(btngravar);
		pnlcancelar.add(btncancelar);
		pnlimprimir.add(btnimprimir);
		pnlexcluir.add(btnexcluir);
		pnlsair.add(btnsair);

		btngravar.addActionListener(bh);
		btncancelar.addActionListener(bh);
		btnimprimir.addActionListener(bh);
		btnexcluir.addActionListener(bh);
		btnsair.addActionListener(bh);
		getContentPane().add(pnlgravar);
		getContentPane().add(pnlcancelar);
		getContentPane().add(pnlimprimir);
		getContentPane().add(pnlexcluir);
		getContentPane().add(pnlsair);
		setVisible(true);
	                  }
	class ButtonHandler implements ActionListener
	{
		public void actionPerformed(ActionEvent ae)
		{
			if (ae.getSource() == "sair")
			{
				System.exit(0);
			}
		}
	}



	public static void main(String[] args) {
		new CadCli().init();
	                                       }

}
Criado 31 de dezembro de 2008
Ultima resposta 13 de fev. de 2009
Respostas 5
Participantes 6