Utiliser le texte saisi dans jTextField dans un constructeur
Fermé
Don_vito.
Messages postés
2
Date d'inscription
dimanche 29 décembre 2013
Statut
Membre
Dernière intervention
29 décembre 2013
-
Modifié par Don_vito. le 29/12/2013 à 12:32
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 29 déc. 2013 à 15:38
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 29 déc. 2013 à 15:38
A voir également:
- Utiliser le texte saisi dans jTextField dans un constructeur
- Utiliser chromecast - Guide
- Insérer une image dans word sans bouger le texte - Guide
- Excel cellule couleur si condition texte - Guide
- Transcription audio en texte word gratuit - Guide
- Mettre un texte en majuscule - Guide
2 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
29 déc. 2013 à 12:59
29 déc. 2013 à 12:59
C'est du code généré automatiquement par NetBeans ça... Il vaut mieux éviter de l'utiliser, car le code obtenu est vraiment moche et tu en vois tout de suite une limite !
Si tu veux faire de la génération automatique de code swing utilise plutôt Eclipse, il te fera un code beaucoup plus correct, équivalent à ce que tu ferais à la main.
Voici un moyen de faire :
Tu peux également passer par un cache :
Si tu veux faire de la génération automatique de code swing utilise plutôt Eclipse, il te fera un code beaucoup plus correct, équivalent à ce que tu ferais à la main.
Voici un moyen de faire :
final Element element = new Element(); final JTextField jTextField2 = new JTextField(); jTextField2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { element.setText(jTextField2.getText()); } });
Tu peux également passer par un cache :
final Map<JTextField,Element> cacheElement = new HashMap<JTextField,Element>(); final JTextField jTextField2 = new JTextField(); jTextField2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { cacheElement.put(jTextField2, new Element(jTextField2.getText()); } }); final Element element = cacheElement.get(jTextField2);
Don_vito.
Messages postés
2
Date d'inscription
dimanche 29 décembre 2013
Statut
Membre
Dernière intervention
29 décembre 2013
29 déc. 2013 à 13:22
29 déc. 2013 à 13:22
Merci pour la réponse.
Mais je ne comprends tjrs pas une chose , je suis supposé écrire ces instructions dans le main?
car j'avais crée une fenêtre (avec Netbeans justement et les leastener et tout se trouvent dans sa classe) , par contre si je suis ce que vous m'avez prescris en creant un TextField , creer un TextField dans le main...je suis un peu perdu.
ce que j'aimerai savoir si c'est possible , c'est en utilisant l'écriture donnée par Netbeans est il possible de bricoler un petit peu pour arriver au résultat?
sinon comment faire (ou ecrire?)
merci encore
Mais je ne comprends tjrs pas une chose , je suis supposé écrire ces instructions dans le main?
car j'avais crée une fenêtre (avec Netbeans justement et les leastener et tout se trouvent dans sa classe) , par contre si je suis ce que vous m'avez prescris en creant un TextField , creer un TextField dans le main...je suis un peu perdu.
ce que j'aimerai savoir si c'est possible , c'est en utilisant l'écriture donnée par Netbeans est il possible de bricoler un petit peu pour arriver au résultat?
sinon comment faire (ou ecrire?)
merci encore
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
29 déc. 2013 à 15:38
29 déc. 2013 à 15:38
Ça dépend comment est fait ton main, si c'est celui généré par NetBeans il ne devrait pas y avoir grand chose dedans. Le problème que tu risques de rencontrer c'est que dans ton main tu vas démarrer la fenêtre puis passer à l'instruction suivante qui va créer ton objet Element. Sauf que la valeur du JTextField sera celle définie au démarrage, puisque l'utilisateur n'aura pas encore eu le temps d'en modifier la valeur... donc l'objet Element ne prendra pas en compte les changements.
C'est pour ça qu'il faudrait plutôt mettre ton code dans les Listener, car eux sont modifiés lorsqu'il se passe quelque chose dans la fenêtre (remarque : je ne suis pas sûr que l'ActionListener soit pertinent pour un JTextField).
Evidemment cela dépend de ce que tu veux faire exactement avec tes JTextField et Element, tu ne nous as pas donné d'information qui permettrait de savoir ce que tu veux faire et donc quelle serait la bonne manière de le coder. Mais sans autre information je dirais que le code dans le main est une erreur.
C'est pour ça qu'il faudrait plutôt mettre ton code dans les Listener, car eux sont modifiés lorsqu'il se passe quelque chose dans la fenêtre (remarque : je ne suis pas sûr que l'ActionListener soit pertinent pour un JTextField).
Evidemment cela dépend de ce que tu veux faire exactement avec tes JTextField et Element, tu ne nous as pas donné d'information qui permettrait de savoir ce que tu veux faire et donc quelle serait la bonne manière de le coder. Mais sans autre information je dirais que le code dans le main est une erreur.