Tableau de JButton [Résolu]

Messages postés
6
Date d'inscription
mercredi 9 novembre 2005
Dernière intervention
8 février 2007
- - Dernière réponse : marou91
Messages postés
6
Date d'inscription
mercredi 9 novembre 2005
Dernière intervention
8 février 2007
- 22 nov. 2006 à 17:06
Salutation a tous,


alors je vous explique mon problème j'ai créé un tableau de JButton et
je n'arrive pas à recupérer l'index de se bouton voici mon code

JButton [] CaractPdt;

for(B=1;B<=(i/5);B++){

                   

             

           
    CaractPdt[B]= new JButton ("Voir le produit
commander "+B);

          
       
CaractPdt[B].addActionListener(new ActionListener() {

          
           
           
           
    public void actionPerformed(ActionEvent e) {

          
           
           
           
        System.out.println("B entré "+B);

          
           
           
           
   
             
           
           
           
    }

          
           
           
            });


                }


merci d'avance pour votre aide
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
5300
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
10 décembre 2018
3
Merci
Salut,

pour reprendre le code avec l'astuce de [auteurdetail.aspx?ID=13557 DARKSIDIOUS]

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Test extends JFrame{

    public Test(){
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setSize(300, 700);
        setLocationRelativeTo(null);
        JPanel p = new JPanel();
       
        JButton [] caractPdt = new JButton[20];
        for(int i = 0; i < caractPdt.length; i++){
            caractPdt[i]= new JButton ("Voir le produit commander "+i);
            caractPdt[i].setName("" + i);
            caractPdt[i].addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    JButton b = (JButton)e.getSource();
                    System.out.println("B entré "+b.getName());
                }
            });
            p.add(caractPdt[i]);
         }
        setContentPane(p);
    }
   
    public static void main(String[] args) {
        new Test().setVisible(true);
    }
}

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA

Merci Twinuts 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de Twinuts
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Dernière intervention
4 mars 2013
0
Merci
normal puisque ton bouton n'a pas accès à la variable B !

Le mieux : nomme ton bouton : CaractPdt.setName(B.toString());
Commenter la réponse de cs_DARKSIDIOUS
Messages postés
6
Date d'inscription
mercredi 9 novembre 2005
Dernière intervention
8 février 2007
0
Merci
euh Darksidious! merci de ton conseil mais je ne vois pas comment le
faire etant donnée ke B est un integer et je ne voit pa comment faire
pour recupérer l'index
Commenter la réponse de marou91
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Dernière intervention
4 mars 2013
0
Merci
ton ActionEvent de la fonction ActionPerformed contient la référence à l'objet cliqué :

((JButton) e.getSource()).getName() Te renverra String(B).
Commenter la réponse de cs_DARKSIDIOUS
Messages postés
6
Date d'inscription
mercredi 9 novembre 2005
Dernière intervention
8 février 2007
0
Merci
Merci Twinuts  Sa c'est cool de ta part

PS: merci a toi aussi [auteurdetail.aspx?ID=13557 DARKSIDIOUS]
Commenter la réponse de marou91

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.