Probleme affichage requete sql dans JTable [Résolu]

Signaler
Messages postés
12
Date d'inscription
mardi 1 avril 2008
Statut
Membre
Dernière intervention
21 mai 2010
-
cs_Grulf
Messages postés
12
Date d'inscription
mardi 1 avril 2008
Statut
Membre
Dernière intervention
21 mai 2010
-
Bonjour,

j'ai un petit soucis lié à l'utilisation des Jtable.

Je voudrais afficher le résultat de mes requetes sous forme de tableaux. La premiere colonne doit être un texte, et la seconde un bouton.
J'ai une erreur à l'affichage. Au lieu d'avoir le contenu de la BDD qui s'affiche j'ai une erreur dans chaque case.
erreur --> javax.swing.JLabel[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=8388608,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,horizontalAlignment=LEADING,horizontalTextPosition=TRAILING,iconTextGap=4,labelFor=,text=666,verticalAlignment=CENTER,verticalTextPosition=CENTER]

Pour info , voici mon code :

String[] titres = {"code", "nom complet"};
      ResultSetMetaData metadata = resultat.getMetaData();
      int nombreColonnes = metadata.getColumnCount();
      Object [][] liste_res;
      liste_res = new Object[nombreColonnes][];
      int index = 0;

 
      while(resultat.next()){
            liste_res[index++] = new Object []{
           
                  new JLabel(resultat.getString("num_asso")),
                  new JButton(resultat.getString("nom_complet"))
                 
      };
    }//while
     
         
      JTable table_res = new JTable(liste_res, titres);
 
      recherche_association.liste_bas2.add(table_res); // ajout du JTable à mon JPanel
 

Si quelqu'un a une petite idée , je suis preneur.
Je galère bien sur ce probleme...  

Merci d'avance ...

4 réponses

Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Statut
Membre
Dernière intervention
9 mai 2010
7
Disons que le JTable est peut être plus facile de représentation.

Tu verras que les gestionnaires de positionnement sont très pratiques (mais aussi très difficiles à utiliser).

Si le JLabel est affiché de cette manière c'est qu'en fait, il fait pareil que si tu faisais un System.out.println("Un label ici -> " + label);
Il me semble qu'en faisant ça tu aurais aussi l'affichage de cette manière javax.swing.JLabel[...];
A vérifier.

Si tu veux afficher le contenu d'un JLabel, il faut faire :
System.out.println("Le contenu d'un JLabel -> " + label.getText());

Voilà

<hr size="2" width="100%" />Timmy!!!
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Statut
Membre
Dernière intervention
9 mai 2010
7
C'est pas une erreur que tu as dans tes cases, mais bien ton JLabel.

Regarde, tu as toutes les infos de ton JLabel dans ce que tu crois qui est une erreur.

Personnellement pour faire ce que tu veux faire, je ne mettrais pas dans un tableau, mais j'utiliserais un gestionnaire de positionnement, du genre GridLayout.

Oublies le tableau d'Object. Recherche vers les gestionnaires de positionnement

<hr size="2" width="100%" />Timmy!!!
Messages postés
12
Date d'inscription
mardi 1 avril 2008
Statut
Membre
Dernière intervention
21 mai 2010

Merci de ta réponse mais je ne comprend pas pourquoi le Jlabel est affiché de cette maniere...
 
Au niveau du positionnement, en effet, je me suis renseigné. J'utilise en autre le miglayout.
J'arrive à afficher le résultat sans problème.

Au niveau de l'affichage , je trouve que le JTable est plus simple et plsu cohérent ...
Donc c'est pour ca que j'ai choisi ce systeme.


De toute facon, au pire j'utiliserai un layout...
Messages postés
12
Date d'inscription
mardi 1 avril 2008
Statut
Membre
Dernière intervention
21 mai 2010

OK merci de ton aide.
Je vais suivre ton conseil sauf que je vais utiliser plutot miglayout.

Je laisse tomber les Jtable ...

Bonne journée