ActionListener Swing
ad
-
kij_82 Messages postés 4260 Statut Contributeur -
kij_82 Messages postés 4260 Statut Contributeur -
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
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
Voilà comment faire ton action listener sur le bouton :
Soit tu te fais une classe de bouton comme suit :
Soit tu créé le bouton directemnent dans ton code comme suit (ce qui ressemble plus à ton cas) :
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 :)
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 :)