Chamar evento de um botão em outro

5 respostas
khaue_viana_

Pessoal queria saber como que chamo um evento de um botão de outro botão

Abraço

5 Respostas

Eric_Yuzo

Teria que criar uma classe que implemente ActionListener e adicioná-la aos dois botões.

khaue_viana_

Num entendi direito, é muito complexo para explicar?

vitimnunes

se você estiver trabalhando com swing você pode criar AbstractActions, veja o exemplo

public class ButtonAction extends AbstractAction {
  public ButtonAction( String buttonText, ImageIcon buttonIcon ) {
    super( buttonText, buttonIcon );
  }

  @Override
  public void actionPerformed( ActionEvent e ) {
    JOptionPane.showMessageDialog( null, "Você clicou em um botão" );
  }
}

e você liga aos botões assim

JButton botao1 = new JButton( new ButtonAction( "Botão1", null ) );
JButton botao2 = new JButton( new ButtonAction( "Botão2", null ) );
Eric_Yuzo
[email removido:
]Num entendi direito, é muito complexo para explicar?
Fica mais um exemplo para somar com o AbstractAction do vitimnunes.
ActionListener meuActionListener = new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        //O que deve ser feito quando houver ação no botão...
    }
};

button1.addActionListener(meuActionListener);
button2.addActionListener(meuActionListener);
Neste caso, estou atribuindo a variável "meuActionListener" uma nova instância de ActionListener e já estou implementando o método actionPerformed, é dentro deste método que deve ser colocado o código que será executado quando o botão sofrer a ação.

Se não quiser implementar diretamente na atribuição da variável, pode ser criada uma classe separada ou uma classe interna.

khaue_viana_

Vou tentar e respondo vocês!

Abraço!

Criado 19 de setembro de 2010
Ultima resposta 20 de set. de 2010
Respostas 5
Participantes 3