begin process at 2010 02 10 09:38:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Applet

 > 

Gestion dynamique de JButton


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Gestion dynamique de JButton

samedi 23 avril 2005 à 12:44:22 | Gestion dynamique de JButton

x_O

Bonjour,
Je suis en train de réaliser une sorte d'applet de chat, et je voudrais que chaque participant puisse interagir avec un autre en cliquant sur un bouton.
A chaque nouvelle connexion, un nouveau bouton est crée et associé au nom.
Pour essayer de gérer un affichage "dynamique" je stock les boutons dans un vector, mais le hic, c'est que, systématiquement, l'ActionListener ne porte que sur le dernier bouton crée :'(
Si quelqu'un a une petit astuce pour que je puisse écouter les évenements sur tous les boutons ....
Merci

(ce n'est peut-etre pas très explicite, mais je ne suis pas chez moi et ne dispose pas de mes sources; j'essairai de les poster un peu plus tard ce WE, à moins que quelqu'un comprenne mon problème et sache y répondre)

D'avance merci
lundi 25 avril 2005 à 00:43:43 | Re : Gestion dynamique de JButton

Spawnrider

Membre Club

Salut x_O,
Quand tu boucle pour remplir ton vector de JButon fais avant un :
setActionCommand('tonString');
Afin d'associer un nom de command a ton bouton (different pour chaque bouton)

Afin par la suite dans ta methode actionPerformed(ActionEvent e) de pouvoir différencier le bouton de la maniere suivante (v etant ton Vector) :

if ((JButon)v.getElement(1)).getActionCommand().equals('tonString') Then
blabla ...

Jespere que tu as compris ce que j'ai dit... sinon repost un message ...

Voili voulou !
Bonne chance ! ;o)

##########################
# Alphaspawnrider@Yohann
# alphaspawnrider@hotmail.com
##########################

jeudi 28 avril 2005 à 01:29:59 | Re : Gestion dynamique de JButton

x_O

Salut spawnrider,
merci pour ta suggestion, hélas (mille fois hélas !) je ne peux pas prévoir la chaine que tu as poétiquement baptisée 'tonString' étant donné que le nom apparaissant sur le bouton est celui d'un des connectés, et que je ne dispose pas de son nom avant connexion.

J'essairai de poster un bout de code demain pour etre plus explicite

Merci quand même pour ce début d'aide :-D
jeudi 28 avril 2005 à 10:53:05 | Re : Gestion dynamique de JButton

Spawnrider

Membre Club
Et bien ne met rien mais dés que l'utilisateur est connecté dans ce cas précis fais ton
setActionCommand sur le bouton lié a l'utilisateur ....
Vu que c'est dynamique fait le quand l'utilisateur est connecté !

Ca peut fonctionner...

Voili voulou +++ ;)

##########################
# Alphaspawnrider@Yohann
# alphaspawnrider@hotmail.com
##########################

vendredi 29 avril 2005 à 02:07:41 | Re : Gestion dynamique de JButton

x_O

:'(
J'ai beau tourner le problème dans tous les sens, à chaque fois, il n'écoute que les évènements portant sur le dernier bouton.
L'idée du vector n'était peut-être pas la meilleure, je suis ouvert à toute proposition si quelqu'un a une suggestion

(et puis faudrait vraiment que je pense a insérer un extrait de mes sources histoire que ca devienne plus explicite....)


ps : spawnrider : getElement() est refusé à la compilation (ou alors c'est moi qui l'implémente de travers, faut que j'arrete de coder à 2h du mat' moi !)
vendredi 29 avril 2005 à 09:25:18 | Re : Gestion dynamique de JButton

Spawnrider

Membre Club
Fais une Hashtable ou assimilé avec comme clef le nom d'utilisateur et comme valeur le bouton !
Bcp plus pratique je pense....


##########################
# Alphaspawnrider@Yohann
# alphaspawnrider@hotmail.com
##########################

samedi 30 avril 2005 à 13:27:54 | Re : Gestion dynamique de JButton

x_O

ok, je me documente là dessus et j'essaye d'en faire une.
mercredi 4 mai 2005 à 00:12:49 | Re : Gestion dynamique de JButton

x_O

bon, ca marche toujours pas, j'ai toujours ce satané problème d'actionListener qui n'écoute que le dernier bouton crée.

voici une partie du code :

String connecte;
JButton mute;

...
while (liste.compareTo("") !=0
{
   ...
   connecte  = liste.substring(0, liste.indexOf( " ")));
   mute = new JButton(connecte):
   mute.setBounds(...);
   mute.addActionListener(this);
   connectes.add(mute);              / / ajoute le bouton dans le cadre "connectes"
   ....
}
...
public void actionPerformed(actionEvent evt)
{
   Object source = evt.getSource();
   if (source = = un_bouton_quelconque)
       tout_va_bien
   if(source = = mute)
      et là, il traite sytématiquement le dernier bouton crée
...
}



peut etre ai-je mal implémenté quand j'ai essayé avec le vector ou la table, mais mon problème restait le même.
Si seulement on pouvait donner des varaibles aux noms des boutons .....


mercredi 4 mai 2005 à 08:49:24 | Re : Gestion dynamique de JButton

Spawnrider

Membre Club
Réponse acceptée !
Mouai nan je vois pas trop le probleme.
J'aurais utiliser un e.getActionCommand a la place de e.getSource et ne pas se fier au nom du bouton mais simplement au nom de la commande associé.... 

Sinon franchement ya un soucis dans ton gestionnaire d'evenement sur tes boutons soit tu n'as pas implementé addActionlistener(this) sur tout les boutons ou bien le soucis viens de getSource .... 

Enfin je vois pas trop là ... ++ ;) 
 


##########################
# Alphaspawnrider@Yohann
# alphaspawnrider@hotmail.com
##########################

mercredi 4 mai 2005 à 12:07:29 | Re : Gestion dynamique de JButton

x_O

et tu as bien raison d'utiliser un e.getActionCommand() : ca à l'air de marcher nettement mieux; je vais donc untiliser un mix :
actionListener pour mes boutons "classiques"
getActionCommand pour mes boutons "dynamiques"

Ceci dit, pour ma culture personnelle (et par curiosité aussi), j'aimerai bien comprendre pourquoi le addActionListener ne marche pas (est-ce du au fait que mes boutons dynamiques sont tous désignés par le même nom ?).

Quoi qu'il en soit : un grand MERCI , spawn


1 2

Cette discussion est classée dans : bouton, dynamique, gestion, crée, jbutton


Répondre à ce message

Sujets en rapport avec ce message

gestion dynamique des instances [ par Frouf85 ] Je souhaite faire une applet et je veux créer dynamiquement des objets dans celle ci.par ex:for (int i=0;iJTable table = new JTable();}mais le problèm un petit pb de conversion [ par bidules ] bonjour,voila g créé une grille de bouton en faisant un gridlayout. Pour créer les boutons je fais en toute logique un "for" mais voila j'aimerais num jtree dynamique [ par ulysse69 ] HelloJe coince sur un truc bete...J'ai un jtree qui fonctionne bien. Je rajoute des feuilles sans pb en appuyant sur un bouton. Lors de ma premiere ex JButton, Jpanel et Jframe...Ca marche pas!!! [ par alexglvr ] Bonjour à tous,je suis en train de developper ma premiere appli java, et j'ai le probleme suivant qui me bloque depuis plusieur jours:Je crée une JPan JButton & Icon [ par horyatus ] Bonjour à vous, Voila mon problème: j'ai un JButton de créé dans ma JFrame et j'aurais voulu dessiner un cercle sur ce bouton. J'ai vu qu'on peut imp pb avec les evenements sur un jbutton [ par gollum50 ] Slt tt le monde,voila j'espère que vous allez pouvoir m'aider, j'ai un bouton qui réalise une action lorsqu'il reçoit un évènement en l'occurrence un Contours sur bouton [ par p0236 ] Gestion d'un menu dynamique [ par gp88 ] Bonjour, j'ai une appli web (JSP) dont je suis en train de refondre l'IHM et surtout la gestion du menu. L'idée que je souhaiterai mettre en pratique Réalisation bouton sur applet [ par developvbdebut ] Bonsoir tout le mondeJe travaille avec java 2 1.3Je voudrais ajouter sur un applet un bouton simple.Voici le code que j'ai commencé.Par rapport à l'al Afficher une image à la taille d'un bouton [ par NeT0n ] Bonjour,J'aimerai savoir si il est possible de faire en sorte que l'image que l'on met sur un bouton prenne tout la place du bouton.code du genre : JB


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales