dúvidas relativas a ActionListeners

2 respostas
D

olá pessoal !

bom, é o seguinte: estou engatinhando em java, e atualmente estou
trabalhando muito com swing… quando insiro um botão na interface,
sempre atrelo a ele um ActionListener… e para cada botão, estou criando
uma nova classe que implementa ActionListener que tem que ter um
método actionPerformed

será que não existe um método melhor para fazer isso sem precisar criar
uma nova classe para cada ActionListener que eu quero adicionar ?

bom, então é isso ! valeu !
Dennis

2 Respostas

I

Você pode adicionar um tratador de eventos para cada botão com o método addActionListener e implementar o método actionPerformed, sem precisar criar uma classe para cada botão.

Rafael_Steil

ActionListener eh uma interface, logo voce precisa fazer a implementacao.
Ha os chamados “Adapters”, como o MouseAdapter, que eh uma classe comum, que implementa um determinado listener, deixando os corpos dos pacotes em branco. Assim, voce apenas sobrescreve os metodos necssarios, ao inves de implementar tudo quando usa interfaces.

Voce nao tem como escapar disso. O que vc pode fazer eh tentar reulizar listeners, ou seja, fazer algum mais “alto-nivel”, “injetando” as coisas especifcas de cada implementacao nele ( apenas uma ideia, nao sei se vale a pena ).

Rafael

Criado 8 de junho de 2004
Ultima resposta 8 de jun. de 2004
Respostas 2
Participantes 3