Creer des JLabel dynamiquemnt a partir des infos d'une table

noussa1985 Messages postés 31 Date d'inscription jeudi 14 juin 2007 Statut Membre Dernière intervention 20 avril 2008 - 20 févr. 2008 à 01:53
tlaloctzin Messages postés 136 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 12 septembre 2013 - 23 févr. 2008 à 20:34
Bonsoir tous,
SVP est ce quelcun a une idée comment je peux créer dynamiquement plusieurs JLabel( à partir des infos d'une table donc le nbre des JLabel doit etre egale à la longueur du table et à chaque fois que j'ajoute une info dans la table un autre JLabel s'ajoute)?
j'ai utilisé cette partie de code mais fonctionne pas SVP aidez moi

 JScrollPane sp= new JScrollPane();
for(i=0;i< vm .length;i++){                //vm table contenant des entiers    
           l =new JLabel("  Attribut "+(i+1)+" : "+((float)vm[i]/nbl)*100);   //creer dynamiquemnt un nouveau JLabel et le placer au e                                                                                                         //dessous des labels  precedents 
                     
            l.setBounds(15, y+(20*i)+(5*i), 325, 20); //j'ai just modifié la position du label par rapport à l'axe Y et je garde le                                                                                                // meme X,meme heigth et meme width  
            sp.setViewportView(l);    
            p.add(sp);                       
                }

BN et merci d'avance.

9 réponses

tlaloctzin Messages postés 136 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 12 septembre 2013 3
21 févr. 2008 à 10:34
coucou,
tu as un message d'erreur , ou c est la disposition de tes labels qui ne colle pas a ce que tu voudrais  ?

Il vaut mieu être riche et en bonne santé que pauvre et malade .
0
noussa1985 Messages postés 31 Date d'inscription jeudi 14 juin 2007 Statut Membre Dernière intervention 20 avril 2008
21 févr. 2008 à 23:08
Salut,
Merci bien de m'avoir repondre mais est ce que vous pouvez me preciser où est l'erreur exactement,si je connais la reponse(ou la faute) j'envois pas  au forum  pour demander l'aide.
 
0
tlaloctzin Messages postés 136 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 12 septembre 2013 3
22 févr. 2008 à 14:37
oui mais qu est ce qui ne marche pas ???? c est pas placé comme tu le voudrais ??? ou tu n as rien ???

Il vaut mieu être riche et en bonne santé que pauvre et malade .
0
noussa1985 Messages postés 31 Date d'inscription jeudi 14 juin 2007 Statut Membre Dernière intervention 20 avril 2008
22 févr. 2008 à 18:22
la partie du code de l'autre fois m'affiche just la derniere valeur(i= vm.length).
j'ai essayé ce nouveau code au dessous mais affiche chaque val dans un  JScrollPane(sp)  mais au lieu de les afficher  l'un au dessous de l'autre,ils s'affichent sur la meme ligne malgré que je change 'y' dans setBounds pour chaque panel.
Vous n'avez pas une autre solution qui me permet  d'afficher mes val l'une au dessous de l'autre.SVP aidez moi c'est vraiment  trop urgent.

for(i=0;i< vm .length;i++){ 
                     l =new JLabel("  A"+(i+1)+" : "+((float)vm[i]/nbl)*100);
                    JScrollPane sp=new JScrollPane();
                    sp.setViewportView(l);                    
                    p.setSize(500, 1000);
                    p.add(sp);
                    sp.setBounds(50, 2500+(20*i)+(5*i), 1000, 50);                    
                    
                  this.add(p);
}
0

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

Posez votre question
tlaloctzin Messages postés 136 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 12 septembre 2013 3
22 févr. 2008 à 20:14
bin deja faudrait que tu ajoues tes label a un panel contenu dans un scrollpane , et pas direct dans le scrollpane :

JScrollPane pane = ...
JPanel panel = ....

pane.add(panel);

for ( .... ) {
...
JLabel label  = ....
pane.add(label);

}
Il vaut mieu être riche et en bonne santé que pauvre et malade .
0
noussa1985 Messages postés 31 Date d'inscription jeudi 14 juin 2007 Statut Membre Dernière intervention 20 avril 2008
23 févr. 2008 à 19:49
 Bonsoir,
j'ai essaié ce que vous m'avez demander (label ds panel puis panel ds scrollpanel puis scrollpanel dans panel de frame)  :         

             JPanel p1= new JPanel();
                 JScrollPane pane = new JScrollPane();             
                for(i=0;i< vm .length;i++){
                       l =new JLabel("  A"+(i+1)+" : "+((float)vm[i]/nbl)*100);
                       JPanel panel = new JPanel();
                       panel.add(l);
                       pane.setViewportView(panel);    //pour ajouter un composant ds JScrollPane
                       panel.setBounds(50, y+(20*i)+(5*i), 325, 50);
                       p.add(pane);
                }
            p1.add(p);      
            setContentPane(p1);
Mais cette fois il m'affich qu'une seule valeure et les autres seront diparu,etes vous sur de cette solution???
SVP est ce que vous pouvez me trouver l'erreur.
0
tlaloctzin Messages postés 136 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 12 septembre 2013 3
23 févr. 2008 à 19:57
essayes ca :

             JPanel p1= new JPanel();
             JScrollPane pane = new JScrollPane();          
             pane.add(p1);
             
                for(i=0;i< vm .length;i++){

                      JLabel  l =new JLabel("  A"+(i+1)+" : "+((float)vm[i]/nbl)*100);
                       p1.add(l);
                       l.setBounds(50, y+(20*i)+(5*i), 325, 50);
                    
                }
           

Il vaut mieu être riche et en bonne santé que pauvre et malade .
0
noussa1985 Messages postés 31 Date d'inscription jeudi 14 juin 2007 Statut Membre Dernière intervention 20 avril 2008
23 févr. 2008 à 20:33
Non ça marche pas encore tous les vals sont affichées mais sur la meme ligne pas l'une au dessous de l'autre,
ché pas où est le probleme exactement j'ai,presque essayé toutes les solutions.
Est ce qu'il n'y a pas quelcun sur le forum qui a eu déja ce meme type de probleme,où sont tous les autres.
Au moin il y a qucun qui est pret à aider les autres,Merci.
0
tlaloctzin Messages postés 136 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 12 septembre 2013 3
23 févr. 2008 à 20:34
regardes peut etre au niveau de ton layout manager sur le panel en question

Il vaut mieu être riche et en bonne santé que pauvre et malade .
0
Rejoignez-nous