Recuperer des valeurs de jtextfield et les afficher dans un jtable

cs_khathe Messages postés 1 Date d'inscription mercredi 21 juillet 2010 Statut Membre Dernière intervention 28 décembre 2010 - 28 déc. 2010 à 01:28
amateur_java Messages postés 32 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 6 août 2020 - 1 janv. 2011 à 20:15
Bonjour,
j'aimerais faire un programme en java qui fait que je saisi des données dans des JTextField et en fin de saisie je veut les afficher dans un JTable.
d'abord je fait une Class pour la saisie Voici le code de cette classe:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.KeyStroke;
import javax.swing.table.DefaultTableModel;


public class MenuInterface extends JFrame implements ActionListener
{
private JMenuBar barmenu;
/*Déclaration des menu*/
private JMenu propo;
private JMenuItem aide;
private JMenu fichier;
private JMenuItem nouveau;
private JMenuItem ouvrir;
private JMenuItem enregistrer;
private JMenuItem enregistrer_sous;
private JMenuItem quitter;
public JTextField prenom;
public JTextField nbr;
private JLabel pren;
private JLabel nb;
public JTextField prenom1;
public JTextField nbr1;
private JLabel pren1;
private JLabel nb1;
public JTextField prenom2;
public JTextField nbr2;
private JLabel pren2;
private JLabel nb2;
private JPanel panneau;
private JPanel panneaubas;
private Container contenu;
private JButton annuler;
private JButton enregistre;

private String chaine[];
private int statut;
private JPanel pan;
public MenuInterface()
{

contenu=getContentPane();
pan=new JPanel();
contenu.add(pan,BorderLayout.SOUTH);
//contenu.setLayout(new FlowLayout());
setTitle("Informations");
setSize(900,300);
/*instanciation des JTEXTfield*/
prenom=new JTextField(15);
nbr=new JTextField(10);
prenom1=new JTextField(15);
nbr1=new JTextField(10);
prenom2=new JTextField(15);
nbr2=new JTextField(10);

/*instanciation JLabel*/
pren=new JLabel("Veuillez entrer le nom d'un Malade");
nb=new JLabel("Veuillez entrer le nombre de consultation pour fiévre typhoïde:");
pren1=new JLabel("Veuillez entrer le nom d'un Malade");
nb1=new JLabel("Veuillez entrer le nombre de consultation pour fiévre typhoïde:");
pren2=new JLabel("Veuillez entrer le nom d'un Malade");
nb2=new JLabel("Veuillez entrer le nombre de consultation pour fiévre typhoïde:");

/*instanciation du JPanel*/
panneau=new JPanel();
panneaubas=new JPanel();

/*instanciation bouton*/
annuler=new JButton("Annuler");
annuler.addActionListener(this);
enregistre=new JButton("Enregistrer");
enregistre.addActionListener(this);
/*Ajout des composants*/
contenu.add(panneau,BorderLayout.CENTER);
contenu.add(panneaubas,BorderLayout.SOUTH);
panneau.setBackground(Color.cyan);
panneau.add(pren);
panneau.add(prenom);
panneau.add(nb);
panneau.add(nbr);

panneau.add(pren1);
panneau.add(prenom1);
panneau.add(nb1);
panneau.add(nbr1);

panneau.add(pren2);
panneau.add(prenom2);
panneau.add(nb2);
panneau.add(nbr2);


panneaubas.add(annuler);
panneaubas.add(enregistre);

/*creation de la barre ses menues*/
barmenu=new JMenuBar();
setJMenuBar(barmenu);
/*instanciation des menuitems et ajout de leurs conteneurs et leurs action au niveau du clavier*/
fichier=new JMenu("Fichier");
nouveau=new JMenuItem("Nouveau");
nouveau.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,ActionEvent.CTRL_MASK));
nouveau.addActionListener(this);
ouvrir=new JMenuItem("Ouvrir...");
ouvrir.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,ActionEvent.CTRL_MASK));
ouvrir.addActionListener(this);
enregistrer=new JMenuItem("Enregistrer");
enregistrer.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK));
enregistrer.addActionListener(this);
enregistrer_sous=new JMenuItem("Enregistrer sous...");
enregistrer_sous.addActionListener(this);
quitter=new JMenuItem("Quitter");
quitter.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F4,ActionEvent.ALT_MASK));
quitter.addActionListener(this);
/*Ajout des des menus et leurs menuitem */
barmenu.add(fichier);
fichier.add(nouveau);
fichier.add(ouvrir);
fichier.add(enregistrer);
fichier.add(enregistrer_sous);
fichier.add(quitter);

propo=new JMenu("A propos");
barmenu.add(propo);
aide=new JMenuItem("Autheurs");
aide.addActionListener(this);
propo.add(aide);

}
public void actionPerformed(ActionEvent evt)
{
if(evt.getSource()==enregistre)
{
Affichage fen=new Affichage();
fen.setVisible(true);
}

if(evt.getSource()==quitter)
{
System.exit(0);
}
}
public static void main(String[] args)
{
// TODO Auto-generated method stub
MenuInterface fen=new MenuInterface();
fen.setVisible(true);
}

}


voici la classe qui gére l'affichage:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;




/* Generaliste1: programme initial basé sur un tableau de 3 Malades */

public class Affichage extends JFrame{
private MenuInterface menu=new MenuInterface();
private TableModel tm;
JTable table;
private Object obj[][];
private String title[];
private JPanel panneau1;
private JPanel panneau2;
private JPanel panneau3;
private JPanel panneau4;
public JTextField tf1;
public JTextField n1;
private JLabel l1;
private JLabel lnb1;
public JTextField tf2;
public JTextField n2;
private JLabel l2;
private JLabel lnb2;
public JTextField tf3;
public JTextField n3;
private JLabel l3;
private JLabel lnb3;
private String[] vals = new String[] {"Nom malades","Nombre de consultation"};
public Affichage()
{
setSize(900,300);
Container contenu = getContentPane();
//contenu.setLayout(new FlowLayout());
contenu.setBackground(Color.darkGray);
panneau1=new JPanel();
panneau2=new JPanel();
panneau3=new JPanel();
panneau4=new JPanel();
contenu.add(panneau1);
contenu.add(panneau3);
contenu.add(panneau3);
panneau2.setLayout(new BorderLayout());
panneau2.add(panneau1,BorderLayout.NORTH);
panneau2.add(panneau3,BorderLayout.CENTER);
panneau2.add(panneau4,BorderLayout.SOUTH);
contenu.add(panneau2);
panneau1.setBackground(Color.darkGray);
panneau2.setBackground(Color.darkGray);
panneau3.setBackground(Color.darkGray);
panneau4.setBackground(Color.darkGray);
table=new JTable();
obj = new Object[][] {{1,2},{new MenuInterface().prenom.getText(),new MenuInterface().nbr.getText()}};
DefaultTableModel dtm = new DefaultTableModel(obj,vals);
table.setModel(dtm);
panneau3.add(new JScrollPane(table));

}


public static void main (String args[])
{
Affichage fen=new Affichage();
fen.setVisible(true);
}


}

Merci de m'aider je compte sur vous.j'ai beaucoup reflechie mai rien.

until the end of time

1 réponse

amateur_java Messages postés 32 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 6 août 2020
1 janv. 2011 à 20:15
bonjour
je pense avoir compris que ton probleme etait de recuperer le texte saisi ds un JTextfield et ben je te donne ma solution :

JTextField fr = new JTextField();
//ON recupere avec getText();
String saisi = fr.getText();
System.out.println(saisi);


allez je pense tavoir aidé slt

les langages du futur:Les langages informatiques<IMG alt="" hspace=0 src="E:\Documents and
0