bonjour,
J'ai un formulaire avec des checkbox créées dynamiquement ( je peux en avoir entre 0 et 100 )
J'aimerais savoir si il est possible que le formulaire, où elles sont installées, récupère les messages de click de ces checkbox
merci
Version imprimable
bonjour,
J'ai un formulaire avec des checkbox créées dynamiquement ( je peux en avoir entre 0 et 100 )
J'aimerais savoir si il est possible que le formulaire, où elles sont installées, récupère les messages de click de ces checkbox
merci
Je suppose que ma question est mal formulée, je vais la préciser :
Dans un cas 'classique' où la checkbox est en variable membre du panel, il suffit de déclarer un ActionListener pour la variable checkbox
Mais dans mon cas, je les créé à la volée :Code:
1
2
3
4
5
6
7 maCheckBox.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { ...
Et mon souhait n'est pas d'avoir un écouteur par checkBox, mais que ce soit mon panelCourant qui centralise les évènements reçus par les checkBox.Code:
1
2
3
4
5
6 ... JCheckBox cb = new JCheckBox( unLabel ) ; monVecteurCb.add( cb ); panelCourant.add( cb ); ...
une idée ?
Salut,
Tu devrais creer une classe qui implémente ActionListener.
Dans ton panel tu as un objet qui instancie cette classe.
Ensuite a chaque fois que tu crée une checkbox, il te suffit de faire un addActionListener avec ton objet comme paramètre.
Je ne sais pas si mon explication est suffisament claire mais ca devrait marcher comme ca ;)
ouais, un actionListener comme variable membre du panel c'est ça ? Auquel j'abonne chaque checkbox.
'vais voir ça.
C'est bien ca ;)
Ben, à ce compte là, pourquoi ne pas faire directement un panel qui implémente ActionListener, c'est-y-pas plus simple ?
Et on abonne chaque checkbox au panel courant, et zoupla !
Ben oui tu peux aussi :) c'est juste que je préferes faire des classes a part pour mes listeners...
A ce moment la il te suffit de faire maCheckBox.addActionListener(this);