ActionListener Swing

ad -  
kij_82 Messages postés 4102 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je débute en programmation Swing et j'ai du mal à comprendre pourkoi lorsque je clic sur un bouton qui a unActionListener, l'action est déclanchée plusieurs fois ????

JButton b1 = new JButton("b1");
b1.addActionListener((ActionListener) this);

...

public void actionPerformed(ActionListener e)
{
//Ici l'action se fait plusieurs fois
}

Est ce que quelqu'un peut m'aider ?

Merci

1 réponse

  1. kij_82 Messages postés 4102 Date d'inscription   Statut Contributeur Dernière intervention   857
     
    Voilà comment faire ton action listener sur le bouton :

    Soit tu te fais une classe de bouton comme suit :
    public class ClickButton extends JButton implements ActionListener {
    
     ClickButton ( ){
    	super();
    	this.addActionListener(this);
        }
    
    // Tu implémente tes méthodes :
     public void actionPerformed ( ActionEvent e ){
      // ici ton code a faire lorsque tu clique sur le bouton
     }
    
    }
    


    Soit tu créé le bouton directemnent dans ton code comme suit (ce qui ressemble plus à ton cas) :
    JButton b = new JButton("cliquez moi dessus ! Je suis mazo :) ");
    b.addActionListener (
        new ActionListener ( ){
           // Ici tes méthodes a implémenter :
           public void actionPerformed ( ActionEvent e ){
              // Ton code a exécuter.
          } 
         // Eventuellement les autres méthodes...
    
        }
    );
    


    Le premier tu l'utilise uniquement lorsque tu as des traitements spéciaux à faire (dans certains type de jeu, ou de logiciel tu aura besoin...)

    Bon courage :)
    4