aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009
-
24 nov. 2004 à 17:04
aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009
-
27 nov. 2004 à 13:27
Bonjour,
voila dans mon programme j'ai plusieurs boutons qui font office de pavé numérique et j'aimerais par exemple qu'ils soient tous désactivables en une seule ligne (plutot que de taper 10 fois la meme ligne pour les 10 boutons)...
j'avais pensé à un jPanel mais en touchant à rien et en appelant setEnabled(false) dessus ben les boutons à l'intérieur sont toujours actifs...
comment faire??
merci d'avance :shy)
un newbie en swing
-------------
Aurél :big)
"... Et de quoi est ce que je me rend pas compte?....il en manquait un..."
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 26 nov. 2004 à 18:36
GodConan :clown)
oui m enfin bon cela ne transmet pas l information aux enfant ;o)
donc si tu veu il te suffi de faire ton panel comme ca :
JPanel tonPnl = new JPanel(){
public void setEnabled( boolean b )
{
super.setEnabled( b );
Component[] compo = getComponents();
for (int i = 0; i < compo.length; i++)
compo[ i ].setEnabled( b );
}
};
en creant ainsi ton panel il aura la proprietee voulu
ensuite tu utilise pnl.setEnabled( true/false ) pour faire ce que tu veu...
++
aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009 25 nov. 2004 à 17:02
Salut,
merci beaucoup d'avoir répondu mais... je suis satisfait qu'à moitié... [:S]
Il n'y as pas moyen de le faire à l'aide d'un widget swing...? j'aurais pensé le faire en utilisant la propriété actionListener des boutons pour leur dire de suivre le comportement du jPanel parent mais je pense pas que ce soit la bonne voie.....
pourtant je sais que ça se fait dans d'autres langages d'interfaces... mais la .... je sèche
-------------
Aurél :big)
"[...] et de quoi est-ce que je me rends pas compte ?.... il en manquait un!"
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 25 nov. 2004 à 21:51
GodConan :clown)
et bien pour setVisible c est posible mais pas pour setEnable ;o) car ce n est pas une propriete du JPanel (enable) mais rien ne t empeche de crer ton propre component que contient cette fonctionnalité ... ;o) car meme les class integrant des fonction repercuter sur les child font ce genre ;o) de demarche et son bien obliger ;o) de passer par une boucle ... ;o)..
Au fait je t mit un tableau plus haut en exemple ;o) mais le mieu serai d utilisé un Vector ;o) un peu plus lourd mais plus souple ;o).
++
Vous n’avez pas trouvé la réponse que vous recherchez ?
aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009 25 nov. 2004 à 22:27
bon ok je vais tenter ça et je te dis si ça "me convient" lol ;)
je cliquerai sur réponse acceptée quand je l'aurais fait
merci encore de tes réponses ;)
-------------
Aurél :big)
"[...] et de quoi est-ce que je me rends pas compte ?.... il en manquait un!"
aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009 26 nov. 2004 à 14:10
en réponse à :
"et bien pour setVisible c est posible mais pas pour setEnable ;o) car ce n est pas une propriete du JPanel (enable)"... il ya bien une méthode setEnable sur le jPanel...
donc je voudrais bien en faisant jPanel.setEnable(false); désactiver tous les objets à l'intérieur (tous mes boutons)
voila ...
-------------
Aurél :big)
"[...] et de quoi est-ce que je me rends pas compte ?.... il en manquait un!"
aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009 26 nov. 2004 à 14:13
en réponse à :
"et bien pour setVisible c est posible mais pas pour setEnable ;o) car ce n est pas une propriete du JPanel (enable)"... il ya bien une méthode setEnable sur le jPanel...
donc je voudrais bien en faisant jPanel.setEnable(false); désactiver tous les objets à l'intérieur (tous mes boutons)
voila ...
-------------
Aurél :big)
"[...] et de quoi est-ce que je me rends pas compte ?.... il en manquait un!"
aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009 26 nov. 2004 à 23:23
merci beaucoup (désolé d'avoir insisté je sais que je suis pénible surtout quand j'ai une idée en tête)
merci beaucoup pour toutes tes réponses et celle la me plait particulierement (ps : j'avais déja implémenté ta fonction pour activer/désactiver mon pavé numérique et c'était déja bien )
merci encore pour le temps que tu as consacré à me répondre ;)
---
apres mon enthousiasme, [:S] je viens de tester et apparemment chez moi ça change rien... mon ide ne veut pas que je modifie le code de l'interface qu'il a généré... j'ai essayé de mettre le code dans le constructeur... mais sans succès...
enfin c'est pas grave j'accepte quand meme ta réponse car elle est bonne pour moi et c'est ce que je cherchais alors meme si mon NetBeans se rebelle ben c'est pas grave au moins je saurais faire la prochaine fois
merci encore ;)
-------------
Aurél :big)
"[...] et de quoi est-ce que je me rends pas compte ?.... il en manquait un!"
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 27 nov. 2004 à 09:14
GodConan :clown)
pff ben change d IDE NetBean c est une catastrophe, la preuve tu ne peut meme pas use une des technik de base du java ... qui est la surcharge de methode a l instanciation : c null ;o) .
Sans faire de pub ;) tu devrai use Eclipse 3.1 avec le plug-in VE
la tu aurai un outils pratique et performant...
aurelien0306
Messages postés181Date d'inscriptionjeudi 27 février 2003StatutMembreDernière intervention 2 mars 2009 27 nov. 2004 à 11:08
oui je sais bien mais c'est dans le cadre d'un projet et on est obligé d'utilisé NetBeans (la vie d'étudiant)... D'ailleurs j'ai quand meme essayé de le contourner en ouvrant mon fichier en dehors de l'ide et en rajoutant les quelques lignes d'instanciation dans mon fichier... Mais en réouvrant mon fichier, NetBeans (un petit malin en ce qui concerne la modification de son code) enlève mes modifs quasiment comme si de rien était... .bref pénible...
enfin c'est pas grave je garde quand même ton idée ;) puis je saurais que plus tard si j'ai besoin de refaire du java j'utiliserais pas celui-la :big)
merci encore
-------------
Aurél :big)
"[...] et de quoi est-ce que je me rends pas compte ?.... il en manquait un!"
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 27 nov. 2004 à 12:38
GodConan :clown)
ten fait pas pour moi ;o) ce n est pas "mon idee"... ;o) c est une fonctionnalitee du langage java ;o) tu peu aussi faire un heritage de class standard pour obtenir le meme resultat et au lieu d utiliser JPanel tu utilise ta class TonPanel ;o) la netBean devrai pas te l interdire !!? , :o)