Recuperer des valeurs d'un jtextfield [Fermé]

Signaler
Messages postés
79
Date d'inscription
vendredi 5 septembre 2008
Statut
Membre
Dernière intervention
28 novembre 2011
-
Messages postés
79
Date d'inscription
vendredi 5 septembre 2008
Statut
Membre
Dernière intervention
28 novembre 2011
-
Bonjour,

J'aimerai faire un programme java dont deux classes.la premiere est une classe de saisie des informations dans un jtextfield.la deuxiéme une classe qui affiche les données saisie dans un jtable.Cette derniére sera appelé par un bouton affiche dans la premiére classe.
Aider s'il vous plait moi j'ai passé des jour sur ce problème d'affichage.

4 réponses


Bonjour,

Pour qu'on puisse t'aider il faudrait que tu nous donnes ... un peu plus de code.

Cordialement,

Dan
Messages postés
79
Date d'inscription
vendredi 5 septembre 2008
Statut
Membre
Dernière intervention
28 novembre 2011
2
Bonjour,
voici le code de la classe pour la saisie des informations:

import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;


public class Jtextfieldex extends JFrame implements ActionListener
{
Container contenu;
JTextField tf1;
JTextField tf2;
JTextField tf3;
JTextField tf4;
JButton afficher;
JPanel panneau;
public Jtextfieldex()
{
setTitle("Exemple de jtextfield");
setSize(200,400);
contenu=getContentPane();
//contenu.setLayout(new FlowLayout());
tf1=new JTextField(15);
tf2=new JTextField(15);
tf3=new JTextField(15);
tf4=new JTextField(15);
contenu.add(tf1);
contenu.add(tf2);
contenu.add(tf3);
contenu.add(tf4);

panneau=new JPanel();
contenu.add(panneau);
panneau.add(tf1);
panneau.add(tf2);
panneau.add(tf3);
panneau.add(tf4);
afficher=new JButton("afficher");
afficher.addActionListener(this);
panneau.add(afficher);
}
public void actionPerformed(ActionEvent evt)
{
if (evt.getSource()==afficher)
{
Affichage fen=new Affichage();
fen.setVisible(true);
}
}
/**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
Jtextfieldex fen=new Jtextfieldex();
fen.setVisible(true);
}

}


Voici l'autre code de la classe pour recuperer les informations saisie dans la classe Jtextfildex et les affichent dans un jtable.mais j'ai pas d'affichage de resultat:

import java.awt.Container;
import java.util.Vector;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;


public class Affichage extends JFrame
{
Vector ligne1;
Vector ligne2;
Vector ligne;
Vector colonne;
Jtextfieldex fen;
JTable table;
Container contenu;
public Affichage()
{
contenu=getContentPane();
ligne1=new Vector();
ligne2=new Vector();
ligne=new Vector();
colonne=new Vector();
fen=new Jtextfieldex();
String s1=fen.tf1.getText();
String s2=fen.tf2.getText();
String s3=fen.tf3.getText();
String s4=fen.tf4.getText();
ligne1.add(s1);ligne1.add(s2);
ligne2.add(s3);ligne2.add(s4);
ligne.add(ligne1);
ligne.add(ligne2);
colonne.add("colonne0");
colonne.add("colonne1");
table=new JTable(ligne,colonne);
contenu.add("Center",new JScrollPane(table));
setTitle("Exemple");
setSize(200,400);

}

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

}

}
Je compte enormément sur vous merci de m'aider

Salut,

Une solution serait de modifier ton listener pour récupérer s1, s2, s3 et s4 puis de les passer en paramètres au constructeur Affichage de la classe Affichage.
 public void actionPerformed(ActionEvent evt) 
      { 
         if (evt.getSource()==afficher) 
         {
            String s1 = tf1.getText();
            String s2 = tf2.getText();
            String s3 = tf3.getText();
            String s4 = tf4.getText();
            Affichage fen=new Affichage(s1, s2, s3, s4); 
            fen.setVisible(true); 
         } 
      }


Et modifier ce constructeur comme ceci:

public Affichage(String s1, String s2, String s3, String s4) 
{ 
contenu=getContentPane(); 
ligne1=new Vector(); 
ligne2=new Vector(); 
ligne=new Vector(); 
colonne=new Vector(); 
fen=new Jtextfieldex(); 

/*String s1=fen.tf1.getText();  Supprimer les getText()
String s2=fen.tf2.getText(); 
String s3=fen.tf3.getText(); 
String s4=fen.tf4.getText();  */

ligne1.add(s1);ligne1.add(s2); 
ligne2.add(s3);ligne2.add(s4); 
ligne.add(ligne1); 
ligne.add(ligne2); 
colonne.add("colonne0"); 
colonne.add("colonne1"); 
table=new JTable(ligne,colonne); 
contenu.add("Center",new JScrollPane(table)); 
setTitle("Exemple"); 
setSize(200,400); 

} 


Cordialement,

Dan
Messages postés
79
Date d'inscription
vendredi 5 septembre 2008
Statut
Membre
Dernière intervention
28 novembre 2011
2
Merci beaucoup votre solution marche bien.Maintenant si je voudrais saisire autant d'information dans des JTextField jusqu'a ce que l'utilisateur sasie "stop" et les récupérer pour les afficher dans un JTable,là se serai dure de créer beaucoup de JTextField et beaucoup de Vectore pour les lignes.Pouvez vous me guider à faire ce programme?La façon dont je veut proceder est que y'aura un bouton ajouter et aprés chaque clique de ce boutton un nouveau JTextField s'affiche et ce variable sera recuperer par un Vector.