Probleme JTextField java [Résolu/Fermé]

Signaler
-
 tortuepasgenial -
Bonjour,

Un petit souci pour récuperer le contenu d'un JTexfield et bien qu ayant essayer deux/trois methodes trouvé sur le forum je bloque toujours.

dans ma classe de gestion de la fenetre, j ai

...
// construction de la fenetre
tF1 = new JTextField("ID",10);
panel.add(tF1);

bouton = new JButton(new actionValider("Valider coupon"));
panel.add(bouton);
...
public String contenuTF1()
{
return tF1.getText();
}


et dans ma classe de gestion de l action sur le bouton où j aimerai récuperer mon Jtextfield

public class actionValider extends AbstractAction {
private Fenetre fenetre;
String a;

public actionValider(String texte){
super(texte);

}

public void actionPerformed(ActionEvent e) {
System.out.println("Vous avez cliqué ici");

}
}


et impossible de recuperer le contenu du JtextField mon mon actionPerformed

please, aidez moi

3 réponses

Messages postés
814
Date d'inscription
jeudi 19 juillet 2007
Statut
Membre
Dernière intervention
17 avril 2020
113
Salut,

Pour récuperer la source de l'événement, vous utilisez l'evenement (e) dans l'exemple

JButton source = (JButton)e.getSource();

Mais pour le reste je ne pense pas que cela marche.

En tous les cas une simple méthode (mais qui cree une classe pour chaque boutton):

monBoutton.addActionListener(new ActionListener()
{
      public void actionPerformed(ActionEvent e)
      {
             //le code du boutton
     }
});

nan mais je recupere bien mon evenement quand je clique sur le bouton, y a pas de souci pour ça

mon probleme se situe au niveau de récuperer mon champ Jtextfield, je sais pas trop comment faire appel au contenu du champ

ptit up pour m aider svp
Messages postés
814
Date d'inscription
jeudi 19 juillet 2007
Statut
Membre
Dernière intervention
17 avril 2020
113
Re,

J'ai jamais utilisé votre méthode.
Ce que je fais en générale, c'est de créer une classe qui "implements" ActionListener, et je crée un constructeur qui admet un paramettre de type JFrame (pour initialiser une variable proche de votre:

private Fenetre fenetre


Puis dans la methode actionPerformed, je peux faire:

String chaine = fenetre.contenuTF1();

ok merci

j ai changé pour une methode plus simple en implantant un actionlistener et un actionperformed et ça marche nickel