JButton - Evento

2 respostas
thundercas

Galera, to com um erro besta aqui em relação a eventos no JButton… Deve ser algum detalhe, mas não consigo sair disso = /… Alguém poderia me ajudar??? Segue abaixo o código e o erro:

package estacionamento;

import java.awt.event.ActionEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class interfaceGrafica {
	//Interface Gráfica
	private JLabel placaLabel;
	private JTextField placaField;
	private JLabel modeloLabel;
	private JTextField modeloField;
	private JLabel rgLabel;
	private JTextField rgField;
	private JButton incluirButton;
	private JPanel container;
	private JFrame janela;
	
	public void montaTela() {
		placaLabel = new JLabel("Placa: ");
		placaField = new JTextField(7);
		modeloLabel = new JLabel("Modelo: ");
		modeloField = new JTextField(20);
		rgLabel = new JLabel("RG: ");
		rgField = new JTextField(10);
		incluirButton = new JButton("Incluir");
		container = new JPanel();
		janela = new JFrame("Formulário");
		
		container.add(placaLabel);
		container.add(placaField);
		container.add(modeloLabel);
		container.add(modeloField);
		container.add(rgLabel);
		container.add(rgField);
		container.add(incluirButton);
		
		janela.add(container);
		janela.pack();
		janela.setVisible(true);
		janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		incluirButton.addActionListener(this);
	}
	
	public void actionPerformed (ActionEvent e) {
		String text = placaField.getText();
		JOptionPane.showMessageDialog(janela, text);
	}
}

Erro:

2 Respostas

danielbussade

Olá o erro está aqui:

incluirButton.addActionListener(this);

Você está passando como referência para o actionListerner, um objeto que não implementa a interface ActionListener, que no caso eh sua própria classe;
Para consertar faça sua classe implementar a interface ActionListener:

public class InterfaceGrafica implements ActionListener

Ou crie uma anonymous class desse jeito:

incluirButton.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent arg0) {
				//Coloque o codigo do evento aqui
				
			}
			
		});

Att

thundercas

Nossa cara, que besteira!!! Vacilei mesmo… Obrigado!!!

Criado 2 de dezembro de 2007
Ultima resposta 3 de dez. de 2007
Respostas 2
Participantes 2