[Ajuda]Evento de JButton chamando metodo

boa tade galerinha, aqui estou eu com outra dúvida…
gosto muito desse forum pois sempre estão dispostos a ajudar e sempre indicam boas soluções e estudos.
Bom estava testando um sisteminha de login interno (comparando JTextField com String) porém tenho a seguinte duvida: Como fazer o evento do botão?

fiz até aqui:

import javax.swing.*;
import java.awt.event.*;

public class Componentes extends JFrame {
    
	JFrame frame = new JFrame();
	JLabel lbl1 = new JLabel("Login:");
	JLabel lbl2 = new JLabel("Senha:");
	JTextField us = new JTextField(20);
	JPasswordField psw = new JPasswordField(20);
	JButton btLogin = new JButton("Login");
	JButton btClear = new JButton("Clear");
	JPanel panel = new JPanel();
	
	public Componentes(){
		
		super("Login");
		panel.add(lbl1);
		panel.add(us);
		panel.add(lbl2);
		panel.add(psw);
		panel.add(btLogin);
		panel.add(btClear);
		frame.add(panel);
		
		frame.setTitle("Window Login");
		frame.setSize(300, 120);
		frame.setVisible(true);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
			
	}
	
	public void ValidateLogin(){
		String user = "teste";
		String pass = "teste";
		
		if((us.getText() == user) && (psw.getText() == pass) ){
			JOptionPane.showMessageDialog(null,"Login Aceito");
		} else {
			JOptionPane.showMessageDialog(null, "Dados invalidos");
		} //end else
	}//end validateLogin
	
	public void ActionPerformed(ActionEvent e){
	     //como devo proceder aqui?	
	}
	
}

Eu pensei que fosse algo do tipo:

public void ActionPerformed(ActionEvent e){
	    e.ValidateLogin(); //erro	
	}

porém o metodo não é aceito ali… o que devo fazer?
Caso não esteja claro o que eu quero fazer é: Quando clicar no botão login fazer a validação do usuario e senha.

Agradeço a ajuda

Ola,

É que vc tá invocando o metodo no objeto errado, seria:

public void ActionPerformed(ActionEvent e){
	    this.ValidateLogin();  
	}

Há, e outra, não esqueça de adicionar o actionListener ao botao. Mas pra isto vc tem que implementar o ActionListener, então tua classe vai ficar:

E em algum lugar vc tera que adicionar o listener ao botao, assim:

Opaa obrigado BrunoCarlo,
o código parece estar certinho, porém toda vez que adiciono essa linha (isso se aplica em outros códigos meus):

public class Componentes extends JFrame implements ActionListener {

a minha classe aponta erro, a mensagem é a seguinte:
The type Componentes must implement the inherited abstract method
ActionListener.actionPerformed(ActionEvent)

o que é isso?

A, testei o código do jeito que vc falou, porém ele me retornou muito erro no console do eclipse, isso se deve ao erro que acabei de postar da minha classe?

Obrigado mais uma vez

Opa,

foi mal, faltou chamar a atenção para o nome do metodo seu que está com o ‘A’ em maiusculo, o correto é “actionPerformed”, o seu metodo está com o ‘A’ do action em maiusculo.

Hà, só uma explicação básica sobre o erro:

Quando vc implementa uma interface, vc deve implementar os metodos desta interface, que em java uma interface é um contrato, tipo, esta da ação do botão o contrato diz que vc irá prover um metodo chamado “actionListener” e que vai receber um “ActionEvent” como parametro, então vc poderá se adicionar no metodo “addActionListener” do botão, pois vc “tem o contrato”, dae quando ocorrer o evento o bota vai notificar quem está interessado e se adicionou… sacou?

po saquei…
poxa cara vlwww mesmo
tirou uma dúvida que eu estava a muito tempo

Agradeço mesmooo

abraços