Je veux Afficher la valeur de la cellule sélectionner dans un champ text

ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012 - 1 sept. 2011 à 12:08
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012 - 2 sept. 2011 à 10:08
Bonjour,je suis débutant en java, j'ai réussi à afficher les données de ma table à un jTable par code. et maintenant je pouvoir faire apparaitre la données dans un jTexfield lors je clic sur la colonne. Aider moi je ne sais pas comment faire. Merci d'avance

16 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 13:06
Bonjour,

Lorsque tu cliques à quel endroit ? Lors du click sur la JTable ou sur un bouton fait exprès. Et qu'est ce que tu n'arrives pas à faire : afficher le texte ou bien tu ne sais pas dans quel listener écrite tes instructions ?

Essayes d'être un peu plus précis.
0
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012
1 sept. 2011 à 13:14
oui je ne sais pas dans quel listener ecris mes instructions
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 13:19
Et pour l'autre question, quelle action est ce que tu effectue avant d'afficher les données, tu sélectionnes dans la table ?
0
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012
1 sept. 2011 à 13:24
voici mon code que j'ai écris pour afficher les données dans un jTable:

public void RemplirTableFamilleProd() {
try {

Connection connect = Connexion.getConnection();

// Object[][] DD = {null};
Object[][] DD = {};
final String[] EE ={"Code","Libellé"};

DefaultTableModel model2 = new DefaultTableModel(DD, EE);
t = new JTable(model2);
t.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
//Empecher de deplace les colonnes
t.getTableHeader().setReorderingAllowed(false);
p=new JScrollPane(t);
//p.setBounds(10,120,910,550);
p.setBounds(100,150,243,250);
p.setAutoscrolls(true);
//Fixe les colonnes du tableau
t.getColumnModel().getColumn(0).setPreferredWidth(40);
t.getColumnModel().getColumn(1).setPreferredWidth(200);

getContentPane().add(p, BorderLayout.CENTER);

Statement requete=connect.createStatement();
ResultSet resultat = requete.executeQuery("select * from FAMILLE");

while (resultat.next()) {

model2.addRow(new Object []{resultat.getString(1),resultat.getString(2)});

}

}
catch(Exception e) { System.out.println("Exception"); }
finally {
try {con.close();}
catch(SQLException e) {e.printStackTrace();}}
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 13:29
Merci mais ca ne répond pas à ma question. Si tu n'essayes pas de faire un effort, tu n'auras pas de réponse !
0
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012
1 sept. 2011 à 13:35
Lorsque je clic sur une cellule de mon jTable ,je veux afficher le contenu de la cellule dans un jTextField. c'est ce que je n'arrive pas à faire sinon j'affiche le jTable avec le contenu sans problème
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 13:56
Regarde cet exemple, il te suffit de remplacer le sysout par les actions que tu souhaites effectuer http://www.java2s.com/Tutorial/Java/0280__SWT/AddDefaultTableSelectionListenerandGettheSelectedTableItem.htm

Si tu veux te simplifier la vie, tu peux créer un bouton qui te permet de remplir ton champ texte à l'aide de la sélection du tableau.
0
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012
1 sept. 2011 à 14:04
Merci. Mais une précision,je travail sous netbeans 7
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 14:05
Désolé, je t'ai donné un exemple en SWT, ce n'est pas ce que tu cherches.

JTable contient une méthode valueChanged appelée lorsque la selection des colonnes changent, il te suffit de réimplémenter cette méthode.

Voilà le fonctionnement :

DefaultTableModel mo = new DefaultTableModel(new Object[]{"t1", "t2", "t3"}, 0);
mo.addRow(new Object[]{"1", "2", "3"});
mo.addRow(new Object[]{"1", "2", "3"});
final JTable tab = new JTable(mo){
@Override
public void valueChanged(ListSelectionEvent e){
System.out.println(getSelectedRow());
}
};
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 14:06
NetBeans est ton ide, rien à voir avec le code que je te donne.
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 14:07
A moins que tu utilises l'éditeur d'ihm et dans ce cas, je ne peux pas t'aider, je ne connais pas cet éditeur.

Par contre, tu dois pouvoir modifier le code de la même manière ???
0
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012
1 sept. 2011 à 14:12
merci beaucoup pour l'aide,je vais essayer d'adapter le code à mon projet
0
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
1 sept. 2011 à 18:07
En effet ;o) le programme ne depend pas de l ide ;o) ...
normalement tu n a pas besoin de toucher ('overrider') à la methode ... tu peux ecouter sur la selection ce qui semble etre ce dont tu as besoin !!??

Mais afficher une valeur de table dans un Field n a que peu d interet?!!! si c est pour éditer la valeur, l'editor apr défaut est deja un JTextField ;o) et c est plus intuitif de changer la valeur dans la table plutot que dans un champ déporté!! ;o) ...

GodConan ;o)
0
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012
1 sept. 2011 à 18:30
en fait,je veux faire en sorte que lorsque je clic sur mon jTable,chaque valeur de chaque cellule de la ligne apparaisse dans les jTextfield afin de pouvoir modifier.
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
1 sept. 2011 à 20:18
Tu n'as pas besoin de l'afficher dans un autre JTextField, tu peux le modifier directement dans la JTable, pour celà, il faut que tu utilises un TableModel dans lequel tu définis la méthode isCellEditable(int row, int col) qui retourne toujours true.

Tu peux faire des recherches sur internet à ce sujet, tu trouveras certainement, si tu restes coincé, n'hésite pas à nous le dire
0
ndaseraphin Messages postés 74 Date d'inscription lundi 29 août 2005 Statut Membre Dernière intervention 1 février 2012
2 sept. 2011 à 10:08
Merci beaucoup pour l'aide
0