Clique do Botao

5 respostas
rodolfogs8

Galera eu estou tentando executar uma funcao com o clique do botao, mas num to conseguindo entender o esquema de action event, alguem pode me dar um help? Olha o meu codigo.
criei um metodo:

public cliqueBotao(ActionEvent e){

System.out.println(oiiii);

}
ai eu chamo ele no main

Class obj = new Class();

obj.cliqueBotao(O QUE EU PASSO AQUI COMO PARAMETRO???);

AI ACIMA QUE ESTA O PROBLEMA, ELE PDE UM PARAMETRO ALGUEM SABE O QUE EU DEVO PASSAR PARA ESTE METODO COMO PARAMETRO?

TKS

5 Respostas

fabim

faz assim:

seuBotao.addActionListener(new java.awt.event.ActionListener() {
	public void actionPerformed(java.awt.event.ActionEvent e) {
	     // seu evento ocorre aqui
	}
});
rodolfogs8

Cara e se eu ter dois botoes na minha tela de qual dos dois ele pega o clique?

diego2005
rodolfogs8:
Cara e se eu ter dois botoes na minha tela de qual dos dois ele pega o clique?

O que você add(cionou) o evento:

seuBotao.addActionListener

Ou então você pode fazer de outra forma, implementando a interface ActionListener:

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

public class MinhaClasse extends JFrame implements ActionListener {
    private JButton btn1;
    private JButton btn2;

    public MinhaClasse() {
        btn1 = new JButton("Botão 1");
        btn2 = new JButton("Botão 2");

        add(btn1, BorderLayout.NORTH);
        add(btn2, BorderLayout.SOUTH);

        btn1.addActionListener(this);
        btn2.addActionListener(this);

        pack();
        setVisible(true);
    }

    public void actionPerformed(ActionEvent e) {
        if(e.getSource() == btn1) {
            System.out.println("Botão 1 clicado...");
        } else if(e.getSource() == btn2) {
            System.out.println("Botão 2 clicado...");
        }
    }
}

T+

bernardo.rafael

No ActionEvent (parâmetro do actionPerformed ) tem um método getSource

public void actionPerformed(Action Event e){ e.getSource(); }

O Método getSource() retorna o objeto que recebeu o evento, no caso, o botão que foi clicado.

leandros

existe o “get” de ActionEvent que é o “e(nesse caso)”.getSource(), esse getSource() tem que ser comparado com a variável de referência do seu botão para que seja processado o listener do mesmo!!..

Criado 24 de julho de 2007
Ultima resposta 24 de jul. de 2007
Respostas 5
Participantes 5