Accueil > Forum > > > > Gestion dynamique de JButton
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
|
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
|
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
|
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
|
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
|
|
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
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|