[Java] Créer des noms de boutons dynamiquement ? C'est possible ??

Créer des noms de boutons dynamiquement ? C'est possible ?? [Java] - Java - Programmation

Marsh Posté le 21-09-2004 à 11:34:56    

:hello:  
 
Comment je pourrais faire qqch du genre :

Code :
  1. for(int i=0; i<monTab.length; i++)
  2. {
  3.     JButton monBouton+i = new JButton() ;
  4. }


 
En fait je dois créer 26 boutons (pour tous les cantons de la Suisse)... et c un peu chiant si je dois tous les déclarer 1 à 1 (et pas beau!)
 
Si c'est pas possible, je peux faire comment pour déclarer tous les boutons en une ligne et les mettre dans un tableau JButton ?

Code :
  1. JButton jButton1, jButton2, jButton3 = new JButton() ;
  2. JButton[] mesBouton = new JButton[]{jButton1, jButton2, jButton3} ;


comme ca?? (ca a pas l'air de marcher...  :cry: )
 
Merci pour votre aide!  
 
@++

Reply

Marsh Posté le 21-09-2004 à 11:34:56   

Reply

Marsh Posté le 21-09-2004 à 11:38:11    

[:mlc][:mlc][:mlc]
 
branche un peu les neurones et repasse plus tard si t'as toujours pas trouvé [:mlc]
 
 
(et merci aux habituels bonnes poires de le laisser réfléchir un peu[:kiki])
 
 
(indice: ça n'a rien avoir avec les boutons, c'est un "problème" général)


Message édité par the real moins moins le 21-09-2004 à 11:38:44

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2004 à 11:42:33    

Bon on va le laisser mariner alors...
 
Un autre indice : c'est une combinaison de tes deux exemples dont tu as besoin (en retirant bien entendu ce qui est inadapté).


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 21-09-2004 à 11:42:50    

voilà :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2004 à 11:43:27    

the real moins moins a écrit :

[:mlc][:mlc][:mlc]
 
branche un peu les neurones et repasse plus tard si t'as toujours pas trouvé [:mlc]
 
 
(et merci aux habituels bonnes poires de le laisser réfléchir un peu[:kiki])
 
 
(indice: ça n'a rien avoir avec les boutons, c'est un "problème" général)


 
 :heink:  
 
je sais que c pas un problème de boutons.... puisque quelle que soit le type de la variable, c pas faisable comme ca! Mais y'a-t-il un moyen pour le faire?? Pasque en PHP, ca passe nickel!

Reply

Marsh Posté le 21-09-2004 à 11:46:24    

le_duc a écrit :

Pasque en PHP, ca passe nickel!


En Java aussi, comme dans pas mal d'autres langages de programmtion  :o


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 21-09-2004 à 11:47:58    

ben oui, je sais qu'avec un talbeau de boutons il me suffirait après de l'appeler dans la boucle for (mesBouton[i]) pour avoir le bouton que je veux...
 
Mais donc c pas possible de créer des noms de variable dynamiquement à la création de ceux-ci??
 
Et ma déclaration de variables et tableau est-elle correcte ?
 

Code :
  1. JButton jButton1, jButton2, jButton3 = new JButton() ;
  2. JButton[] mesBouton = new JButton[]{jButton1, jButton2, jButton3} ;

Reply

Marsh Posté le 21-09-2004 à 11:48:38    

sircam a écrit :

En Java aussi, comme dans pas mal d'autres langages de programmtion  :o


 
 :??:

Reply

Marsh Posté le 21-09-2004 à 11:48:38    

le_duc a écrit :

Mais donc c pas possible de créer des noms de variable dynamiquement à la création de ceux-ci??


non.


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 11:49:10    

indice : tu fais un tableau de boutons.
 
Le truc c'est que tu n'es pas obligé d'avoir une variable par bouton pour pouvoir les utiliser.
pour reprendre ton exemple avec ton tableau JButton[] mesBouton, plutot que de vouloir avec les variables jButton1, jButton2, jButton3, tu peux directement utiliser ton tableau : mesBouton[0], mesBouton[1], mesBouton[2]. Ca rebient a même
 
 
-- > [:fuck]


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 11:49:10   

Reply

Marsh Posté le 21-09-2004 à 11:50:05    

le_duc a écrit :

Mais donc c pas possible de créer des noms de variable dynamiquement à la création de ceux-ci??


Java n'est pas un langage scripté.


Message édité par sircam le 21-09-2004 à 11:51:33

---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 21-09-2004 à 12:00:40    

benou a écrit :

indice : tu fais un tableau de boutons.
 
Le truc c'est que tu n'es pas obligé d'avoir une variable par bouton pour pouvoir les utiliser.
pour reprendre ton exemple avec ton tableau JButton[] mesBouton, plutot que de vouloir avec les variables jButton1, jButton2, jButton3, tu peux directement utiliser ton tableau : mesBouton[0], mesBouton[1], mesBouton[2]. Ca rebient a même
 
 
-- > [:fuck]


 
ben oui, je fais un tableau de bouton que j'utilise dans la boucle for, mais le tableau de boutons, il faudra bien que je le remplisse de boutons... donc il faudra que je les déclare pour les utiliser.
 
Donc je dois obligatoirement passer par ces 2 lignes... non?

Code :
  1. JButton jButton1, jButton2, jButton3,..., jButton26 = new JButton() ;
  2. JButton[] mesBouton = new JButton[]{jButton1, jButton2, jButton3,..., jButton26} ;


Reply

Marsh Posté le 21-09-2004 à 12:03:10    

le_duc a écrit :

ben oui, je fais un tableau de bouton que j'utilise dans la boucle for, mais le tableau de boutons, il faudra bien que je le remplisse de boutons... donc il faudra que je les déclare pour les utiliser.
 
Donc je dois obligatoirement passer par ces 2 lignes... non?

Code :
  1. JButton jButton1, jButton2, jButton3,..., jButton26 = new JButton() ;
  2. JButton[] mesBouton = new JButton[]{jButton1, jButton2, jButton3,..., jButton26} ;




Mais non enfin !
 
Relis Benou :
 
"plutot que de vouloir avec les variables jButton1, jButton2, jButton3, tu peux directement utiliser ton tableau : mesBouton[0], mesBouton[1], mesBouton[2]"


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 21-09-2004 à 12:09:01    

sircam a écrit :

Mais non enfin !
 
Relis Benou :
 
"plutot que de vouloir avec les variables jButton1, jButton2, jButton3, tu peux directement utiliser ton tableau : mesBouton[0], mesBouton[1], mesBouton[2]"


 
donc il me suffirait de déclarer :

Code :
  1. JButton[] mesBouton = new JButton[26] ;


 
et je pourrais utiliser chaque "case-bouton" du tableau???

Reply

Marsh Posté le 21-09-2004 à 12:10:39    

[:clappclapp]
 
 
 
(benou :??:)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2004 à 12:51:39    

Code :
  1. List l = new ArrayList();
  2. for (int j = 0 ; j < 26 ; j ++)
  3.    l.add(new JButton());


 
allez hop comme ça on en parle plus... marre de voir des horreurs (même si y'a mieux que ça)
 
edit : avec un peu de chances tu même calquer ta boucle sur une requête de base de données et là c'est le summum !  :heink:


Message édité par titione le 21-09-2004 à 12:53:00
Reply

Marsh Posté le 21-09-2004 à 14:41:27    

le_duc a écrit :

donc il me suffirait de déclarer :

Code :
  1. JButton[] mesBouton = new JButton[26] ;


 
et je pourrais utiliser chaque "case-bouton" du tableau???


faut quand même que tu les initialises tes boutons : là ton tableau contient 26 cases null => une petite boucle for et on en parle plus !


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 14:43:13    

titione a écrit :

List l = new ArrayList();


pkoi une List ? un tableau c'est quand même plus adapté dans ce cas ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 14:44:17    


rapport à ca

the real moins moins a écrit :

(et merci aux habituels bonnes poires de le laisser réfléchir un peu[:kiki])


kiki->kuku, tout ca ...


Message édité par benou le 21-09-2004 à 14:44:45

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 14:53:08    

benou a écrit :

faut quand même que tu les initialises tes boutons : là ton tableau contient 26 cases null => une petite boucle for et on en parle plus !


 
 :jap: titione et benou
 
je savais pas qu'on pouvait initialiser juste comme ca!! Le bouton qui sera dans mesBoutons[0] aura quoi comme nom qui l'identifie??

Reply

Marsh Posté le 21-09-2004 à 14:54:49    

le_duc a écrit :

:jap: titione et benou
 
je savais pas qu'on pouvait initialiser juste comme ca!! Le bouton qui sera dans mesBoutons[0] aura quoi comme nom qui l'identifie??


celui que tu lui donneras ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 14:55:34    

l.get(i) :)

Reply

Marsh Posté le 21-09-2004 à 14:56:53    


Sans oublier de le caster  :p


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 21-09-2004 à 14:57:01    


mais arrête avec ta List [:le kneu]
 
pkoi tu veux utiliser une List ?


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 15:01:50    

benou a écrit :

mais arrête avec ta List [:le kneu]
 
pkoi tu veux utiliser une List ?


Oui, c'est quand même plus direct avec un tableau dans ce cas-ci.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 21-09-2004 à 15:11:52    

benou a écrit :

rapport à ca
 
kiki->kuku, tout ca ...

ha ben c'était pas *spécialement* pour toi ;)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2004 à 15:15:52    

the real moins moins a écrit :

ha ben c'était pas *spécialement* pour toi ;)


allez va c'est ce qu'il disent tous [:cherrytree1]


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 16:37:52    

benou a écrit :

celui que tu lui donneras ...


 

Code :
  1. JButton[] tabButton = new JButton[Cantons.NBRE_CANTONS] ;
  2. for (int j=0 ; j<tabButton.length ; j++)
  3.      tabButton[j] = new JButton() ;


 
je vois pas trop ou on peu donner un nom au bouton... (bon j'en ai pas besoin, mais par curiosité c'est tjs intéressant  :D )

Reply

Marsh Posté le 21-09-2004 à 16:44:58    

AYAN


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2004 à 16:57:36    

monBouton.setName("TaMereEnSlip" ); :o
 
y'a des gens qui ont du mal a distinguer la variable de l'objet visiblement

Reply

Marsh Posté le 21-09-2004 à 17:16:10    

sinon, j'ai une question : tu va en faire quoi de tes boutons ? Il va réellement te servir ton tableau ?

Reply

Marsh Posté le 21-09-2004 à 17:30:07    

le_duc a écrit :


je vois pas trop ou on peu donner un nom au bouton... (bon j'en ai pas besoin, mais par curiosité c'est tjs intéressant  :D )


y a des tas de façon. en vla une par exemple :  

Code :
  1. JButton[] tabButton = new JButton[Cantons.NBRE_CANTONS] ;
  2. String[] tabButtonLabels = {"toto", "tata", ..., "titi"};
  3. for (int j=0 ; j<tabButton.length ; j++)
  4.      tabButton[j] = new JButton(tabButtonLabels[j]) ;


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 17:35:08    

comme lorill l'a montré, les componsant peuvent recevoir un nom, de même ils sont accessibles par nom et par index dans leur container (bien que je n'aie jamais utilisé ces possibilités).

Reply

Marsh Posté le 21-09-2004 à 17:37:05    

benou a écrit :

y a des tas de façon. en vla une par exemple :  

Code :
  1. JButton[] tabButton = new JButton[Cantons.NBRE_CANTONS] ;
  2. String[] tabButtonLabels = {"toto", "tata", ..., "titi"};
  3. for (int j=0 ; j<tabButton.length ; j++)
  4.      tabButton[j] = new JButton(tabButtonLabels[j]) ;



un nom il a demandé, pas un label :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2004 à 17:38:08    

d4rK 3Mpr0R a écrit :

comme lorill l'a montré, les componsant peuvent recevoir un nom, de même ils sont accessibles par nom et par index dans leur container (bien que je n'aie jamais utilisé ces possibilités).


ouais ... je pense que c'est plus à des fins d'"introspection", non ?


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 17:38:27    

the real moins moins a écrit :

un nom il a demandé, pas un label :o


j'imagine qu'il voulait dire label ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 17:41:03    

benou a écrit :

ouais ... je pense que c'est plus à des fins d'"introspection", non ?


bof non, moi je m'en sers pour sauver/restaurer la positions de fenetres, sliders & autres
 

benou a écrit :

j'imagine qu'il voulait dire label ...


variable plutot a mon avis, mais parce qu'il a pas tout compris

Reply

Marsh Posté le 21-09-2004 à 17:42:10    

lorill a écrit :

variable plutot a mon avis


les paris sont ouverts :)


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-09-2004 à 17:43:14    

benou a écrit :

ouais ... je pense que c'est plus à des fins d'"introspection", non ?

oué, je pense aussi. Genre des truc de localisation peut-etre aussi.
 
ça respecte l'interface des attributs indexées des javabeans aussi (logique) ça veut dire qu'on peut naviguer dans le bordel avec des éditeur de beans.
 
 
Ah ?! on me dit dans mon oreillette que les javabeans c'est mort et que je suis le dernier con à utiliser ça.

Reply

Marsh Posté le 21-09-2004 à 17:43:34    

je vote lorill [:plusun]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed