IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

obtenir JComponent a partir d'une chaine


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 139
    Par défaut obtenir JComponent a partir d'une chaine
    Bonjour, est il possible d'obtenir un JCompoenent deja creer, dont l'identifiant est par exemple la chaine "textField"?

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    JTextField textField = new JTextField();
    j'aimerai par la suite ayant une chaine "textField" obtenir le JComposant cmp.
    pour ensuite faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    cmp.setEnable(false);

  2. #2
    Membre éclairé Avatar de snoop
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 354
    Par défaut
    Ce n'est pas possible comme ça, mais tu peux cependant récupérer un composant via son Name que tu connais par avance :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    jtextField.getName()

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 139
    Par défaut
    eeuhhh...il me semble que getName() renvoie le nom du composant, or moi je voudrai le composant a partir de son nom que je connais d'avacne.

  4. #4
    Membre éclairé Avatar de snoop
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 354
    Par défaut
    oui...
    A priori tu as la possibilité de connaitre le container parent (proche ou éloigné) de ton JTextField...
    Donc, tu parcours tes containers les un après les autres afin de tester pour chaque enfant son type (appartient à JTextField ou non) et son nom (getName()), et là tu peux le récupérer ...

  5. #5
    Membre Expert
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Par défaut
    Bonjour,

    pourquoi vouloir accéder au JTextField par une chaîne de caractère, alors que tu peux y accéder directement ?

    Tu peux quand même le faire toi-même : tu crées une Map statique qui associe les composants à leurs noms, mais ce n'est pas la façon habituelle de programmer en Java. Si tu n'arrives pas à accéder à ton JTextField à partir de la classe qui doit le commander, essaie plutôt de réorganiser tes classes.
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 139
    Par défaut
    en fait voila ce que je veut faire...j'ai une application GUI, il y plein de JTextField, des Jlist et pas seulement...

    Je veut creer une application qui, au lancement se connestera a une base de donne qui contient certains elements de mon appli (les JTextField et Jlist...) et ainsi les elements presents dans la base de donne pourront etre mis en setEnable(false). Donc j'obtient une chaine de la base de donne qui est la representation de mon element en question, mais alors, comment faire le mapping entre cette chaine et l'element en question?

    J'ai pas envie de parcourir tout les JComponent a chaque fois et de les comparer a la chaine avec un toString()...je trouve que c'est pas trop optimale...n'y a t il pas un getComponentByName....ou quelque chose de ce genre?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 15/01/2006, 20h22
  2. [SQL] Obtenir un tableau à partir d'une liste
    Par JMO91 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 11/01/2006, 00h07
  3. Réponses: 4
    Dernier message: 07/01/2006, 18h36
  4. Réponses: 7
    Dernier message: 15/11/2005, 10h14
  5. [Struts]Ecrire un html:link à partir d'une chaine
    Par cowa dans le forum Struts 1
    Réponses: 5
    Dernier message: 12/05/2004, 17h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo