Boutons actionperformed

soyonsami Messages postés 34 Date d'inscription jeudi 19 avril 2007 Statut Membre Dernière intervention 5 juillet 2007 - 24 avril 2007 à 09:28
soyonsami Messages postés 34 Date d'inscription jeudi 19 avril 2007 Statut Membre Dernière intervention 5 juillet 2007 - 24 avril 2007 à 11:06
Bonjour à tous
j'ai un probleme dans mon code Java :  j'ai crée plusieurs boutons, or dans mon programme éxécuté, j'ai un probleme : lorsque je clique sur nimporte quel bouton, il se produit toujours la meme chose ( les actions que j'ai tapé lorsque qu'on clique sur le bouton ) ce qui fait que nimporte quel bouton produit le meme évenement ( si j'appuie sur le bouton Valider ou Retour j'aurais toujours le meme effet peu importe le bouton sur lequel je clique... ), il faudrait que je fasse des test des valeurs des boutons dans l'actionperformed mais je ne sais pas comment faire, merci de m'aider

voici un bout de mon code :

/* ... */
import javax.swing.JButton;
import /* ... */ValiderJButton;
import /*... */PrecedentJButton;

public abstract class PanelGraphe extends JPanel {

/* ... */
ValiderJButton btnValider=null;
 PrecedentJButton btnReturn=null;
 JButton btnAjouter=null;
 JButton btnToutAjouter=null;
 JButton btnEnlever=null;
 JButton btnToutEnlever=null;

/* ... */

 public abstract void btnValider_actionPerformed(ActionEvent Event);
 public abstract void btnReturn_actionPerformed(ActionEvent Event);
 public abstract void btnAjouter_actionPerformed(ActionEvent Event);
 public abstract void btnToutAjouter_actionPerformed(ActionEvent Event);
 public abstract void btnEnlever_actionPerformed(ActionEvent Event);
 public abstract void btnToutEnlever_actionPerformed(ActionEvent Event);

/* ... */

public PanelGraphe(JPanel P)
 {
/* ... */
  // placement des boutons...
btnAjouter.setSize(50,25);
  btnAjouter.setLocation(150, 10 );
  btnAjouter.setVisible(true);
  btnAjouter.setText(">");
  this.add(btnAjouter);

//mon probleme est ici : je voudrais que chaque boutons execute des actions differentes...
protected class EventHandler implements ActionListener, KeyListener
 {
  public void actionPerformed(ActionEvent arg0) {
     
      String Nom = arg0.getActionCommand();
   PanelGraphe.this.btnValider_actionPerformed(arg0);
   PanelGraphe.this.btnReturn_actionPerformed(arg0);
   PanelGraphe.this.btnAjouter_actionPerformed(arg0);
   PanelGraphe.this.btnToutAjouter_actionPerformed(arg0);
   PanelGraphe.this.btnEnlever_actionPerformed(arg0);
   PanelGraphe.this.btnToutEnlever_actionPerformed(arg0);

Merci à tous

3 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
24 avril 2007 à 09:34
Il te suffit de tester le nom de la commande exécutée :
if (nom.equals("toto")) {
// ...
} else if (nom.equals("tata")) {
// ...
}
// etc.
0
soyonsami Messages postés 34 Date d'inscription jeudi 19 avril 2007 Statut Membre Dernière intervention 5 juillet 2007
24 avril 2007 à 10:34
merci d'avir répondu si vite,
Je suis débutant en java, ce que tu appelles "toto" "tata" ce sont les noms des boutons tels que l'utilisateur le voit?

Ainsi si je veux tester pour mon bouton valider ( l'utilisateur voit marqué "valider" a l'écran, je dois faire
if (Nom.equals("valider")){
//...
}
???

if (nom.equals("toto")) {
// ... : ici je dois mettre les instructions a executer? je peux les mettre dans un autre .java ou je dois forcement les mettre ici?

merci
0
soyonsami Messages postés 34 Date d'inscription jeudi 19 avril 2007 Statut Membre Dernière intervention 5 juillet 2007
24 avril 2007 à 11:06
C'est bon ca marche! Merci :)
0
Rejoignez-nous