Problèmes de récupération d'un jtextfileld par getText()

Signaler
Messages postés
2
Date d'inscription
lundi 16 février 2009
Statut
Membre
Dernière intervention
16 février 2009
-
Messages postés
2
Date d'inscription
lundi 16 février 2009
Statut
Membre
Dernière intervention
16 février 2009
-
Bonjour à tous,

Je travaille actuellement sur une appli client lourd avec des fenêtres graphiques.
Je cherche à récupérer le contenu de certains champs mais pour l'instant, pas de résultat.
Voilà tout d'abord un code simple que j'aimerai débloquer :




""
import

java.awt.*;





import




java.awt.event.*;




import




javax.swing.*;




public








class

TestTextfield


extends

JFrame {



private





static





final





long





serialVersionUID

= 1L;












public

TestTextfield() { setTitle (


"GALO - Saisie des données"
);setSize(400,200);







setDefaultCloseOperation(JFrame.


EXIT_ON_CLOSE

);


/**






*



Création



des



onglets






*/

JTabbedPane onglets =





new

JTabbedPane(SwingConstants.


TOP

);

Test onglet1 =



new

Test();onglets.addTab(


"onglet"
, onglet1);onglets.setOpaque(



true

);add(onglets);

getContentPane();



}
















public





static





void

main(String args[]) {TestTextfield f =



new

TestTextfield();f.setVisible(



true

);}

}




class




Test


extends

JPanel {



private





static





final





long





serialVersionUID

= 0;



public

Test() {TestField e =



new

TestField();TestButton c =



new

TestButton();


/**






*



Création



du



GridBagLayout






*/

GridBagLayout g =





new

GridBagLayout();setLayout(g);


// construction des contraintes




GridBagConstraints c1 =





new

GridBagConstraints();c1.


gridx
= 0;c1.


gridy
= 0;c1.


fill
= GridBagConstraints.


BOTH

;add(e,c1);

GridBagConstraints c2 =



new

GridBagConstraints();c2.


gridx
= 1;c2.


gridy
= 0;c2.


fill
= GridBagConstraints.


BOTH

;c2.


gridheight
= 2;add(c,c2);

}

}




class




TestField


extends

JPanel


implements

ActionListener {



private





static





final





long





serialVersionUID

= 0;



public

JTextField

text
;



public

TestField() {


text
=


new

JTextField(5);


text
.addActionListener(


this

);add(


text
);}



public





void

actionPerformed(ActionEvent arg0) {


//

TODO

Auto-generated method stub




}


}









class




TestButton


extends

JPanel


implements

ActionListener {



private





static





final





long





serialVersionUID

= 0;



private

JButton

ok
;



public

TestButton() {


ok
=


new

JButton (

"ok"
);


ok
.addActionListener(


this

);add(


ok
);}



public





void

actionPerformed(ActionEvent e) {Object source = e.getSource();

TestField y =



new

TestField();



if

(source ==

ok
) {


String essai =


null

;System.



out

.println(

"valeur : "
+ essai);



try

{essai = y.


text
.getText();}



catch

(Exception et) {System.



out

.println(et);}

System.



out

.println(

"valeur : "
+ essai);}

}

}""

Malheureusement, j'ai comme résultat  :

""valeur : null

valeur : ""


Je voudrais savoir pourquoi je n'arrive pas à récupérer le contenu de mon JTextField, sachant que je dois garder cette structure en plusieurs classes.

D'avance je vous remercie pour votre aide.

2 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
Salut,

C'est très certainement ces instructions qui sont exécutées :
if(source = =
ok) {

String essai =
null;System. out
.println(
"valeur : " + essai);

Je te conseille de le remplacer par :

if (source.equals(
ok)) {

String essai =
y.text.getText();System.out
.println(
"valeur : " + essai);

______________________________________
DarK Sidious
Messages postés
2
Date d'inscription
lundi 16 février 2009
Statut
Membre
Dernière intervention
16 février 2009

Merci pour ton aide DarK Sidious mais ça ne fonctionne toujours pas. Je récupère toujours un string vide.