Botões não funcionam!

2 respostas
X

Tentei usar o dispose no menubar FIM e limpar os campos com o botão limpar mas nada !

import javax.swing.*;

import java.awt.event.*;
import java.awt.*;

public class A extends JFrame implements ActionListener {
	private JDesktopPane desktop;

	private JMenuItem fim, empregado, dados;

	private JLabel label, label2, label3, label4, label5;

	private JButton cadastro, salario, limpar;

	public A() {

		super("Janela Principal");
		// cria JDesktopPane
		desktop = new JDesktopPane();
		JMenu cadastro = new JMenu("Cadastro");
		cadastro.setMnemonic('C');
		empregado = new JMenuItem("Empregado");
		fim = new JMenuItem("Fim");
		empregado.addActionListener(this);
		cadastro.add(empregado);
		cadastro.add(fim);
		JMenu visualizar = new JMenu("Visualizar");
		dados = new JMenuItem("Dados");
		visualizar.add(dados);
		JMenuBar bar = new JMenuBar();
		bar.add(cadastro);
		bar.add(visualizar);
		setJMenuBar(bar);
		getContentPane().add(desktop, BorderLayout.CENTER);
		setSize(1000, 1000);
		setVisible(true);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}

	public void actionPerformed(ActionEvent e) {
		// cria um JInternalFrame e adiciona no JDesktopPane
		JInternalFrame internal = new JInternalFrame("Empregado", true, true,
				true, true);

		internal.setResizable(false);

		JPanel c = new JPanel();
		getContentPane().add(c);
		c.setLayout(new GridLayout(0, 1));

		label = new JLabel("Nome:");
		c.add(label);
		JTextField text1 = new JTextField(10);
		c.add(text1);

		label2 = new JLabel("Função:");
		c.add(label2);
		JTextField text2 = new JTextField(10);
		c.add(text2);

		label3 = new JLabel("PIS/PASEP:");
		c.add(label3);
		JTextField text3 = new JTextField(10);
		c.add(text3);

		label4 = new JLabel("Salário Base:");
		c.add(label4);
		JTextField text4 = new JTextField(10);
		c.add(text4);

		label5 = new JLabel("IR:");
		c.add(label5);
		JTextField text5 = new JTextField(10);
		c.add(text5);

		c.add(cadastro = new JButton("Cadastrar"));
		c.add(salario = new JButton("Visualizar salário"));
		c.add(limpar = new JButton("Limpar"));

		if (e.getSource() == limpar) {
			text1.setText(" ");
			text2.setText(" ");
			text3.setText(" ");
			text4.setText(" ");
			text5.setText(" ");

		}

		internal.add(c);

		setSize(700, 400);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setVisible(true);

		internal.setSize(400, 300);
		desktop.add(internal);
		internal.setVisible(true);

		if (e.getSource() == fim) {
			dispose(desktop);
		}

	}

	private void dispose(JDesktopPane desktop2) {
		// TODO Auto-generated method stub

	}

	public static void main(String args[]) {
		A janela = new A();
	}
}

Se alguem puder me ajudar a desencalhar e fazê-los funcionar eu agradeceria muito !

2 Respostas

X

Pra ajudar na localização:

if (e.getSource() == limpar) {
			text1.setText(" ");
			text2.setText(" ");
			text3.setText(" ");
			text4.setText(" ");
			text5.setText(" ");

		}
if (e.getSource() == fim) {
			dispose(desktop);
		}
Robsonramosabrao

Bom dia,

Amigo vc não fez o registro do evento no construtor:

public A() {   

         limpar.addActionListener(this);
         //o resto segue a mesma lógica
         }

}
Criado 6 de dezembro de 2007
Ultima resposta 6 de dez. de 2007
Respostas 2
Participantes 2