JScrollPane avec JLabel [Résolu]

abdesa1 19 Messages postés jeudi 17 novembre 2005Date d'inscription 23 avril 2006 Dernière intervention - 9 avril 2006 à 23:00 - Dernière réponse : abdesa1 19 Messages postés jeudi 17 novembre 2005Date d'inscription 23 avril 2006 Dernière intervention
- 10 avril 2006 à 11:32
Bonsoir,
j'ai un problème; au fait je ne sais pas comment utiliser JScrollPane ;
j'ai un tableau de JLabel[] et j'affiche des elementds de ma base de donées et dejà je ne sais pas comment on peut fixer une longuer de la cellule JLabel. et changer dynamiquement la largeur en fonction de la chaine à l'interieur??? et comment y intégrer la JScrollPane???...
Merci d'avance!!!!..
Bien à vous...
Afficher la suite 

2 réponses

Répondre au sujet
bloofi 388 Messages postés mercredi 1 octobre 2003Date d'inscription 3 mai 2006 Dernière intervention - 10 avril 2006 à 00:39
+3
Utile
Coucou,

pour ce qui est du JScrollPane, tu peux par exemple tous les mettre dans un panel et mettre ce panel dans le scroll, exemple :

JPanel p = new JPanel() ;
p.setLayout( new BoxLayout(p , BoxLayout.Y_AXIS) );
for(i bouclant sur tablo de label)
{
p.add( tablo[i] );
}
JScrollPane scroll = new JScrollPane(p , JSCrollPane.VERTICAL_BAR_AS_NEEDED, JScrollPane.HORIZONTAL_BAR_AS_NEEDED);
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de bloofi
abdesa1 19 Messages postés jeudi 17 novembre 2005Date d'inscription 23 avril 2006 Dernière intervention - 10 avril 2006 à 11:32
0
Utile
Merci bloofi,
j'ai resolu mon problème de JScrollPane, mais maintenant le prolème c'est qu'il ne m'affiche que le dernier element(alphabétiqument) de ma table de la BD!!!, voici le bout de code si jamais vous avez des remarques!......

pcentre = new JPanel(new GridLayout(nb+1,8));
//nb=nbre d'enregistrement ds ma table participant
col=new JLabel[(nb+1)*8]; //je créé 1 tableau de JLabel avec (nb+1) * 8 colonnes
for(int i=0;i<(nb+1)*8;i++)
{
col[i]=new JLabel("");
col[i].setBorder(BorderFactory.createLineBorder(Color.BLUE));
col[i].setHorizontalAlignment(SwingConstants.CENTER);
pcentre.add(col[i]);
}
col[0].setText("Numéro Abonné"); //c'est pour les colonnes
col[1].setText("Nom");
col[2].setText("Prénom");
col[3].setText("CP");
col[4].setText("Localité");
col[5].setText("Telephone");
col[6].setText("GSM");
col[7].setText("eMail");
for(int i=0;i<8;i++)
col[i].setFont(fig);

req="SELECT * FROM participant ORDER BY nom_abonne"; //ma requete
cd=new ControlData();
rs=cd.requete(req); //execution de req
try{
int i=8; //je commence à partir de la 2ème ligne de mon JLabel[]
while(rs.next())
{
col[i].setText(String.valueOf(rs.getInt("id_participant")));
col[i+1].setText(rs.getString("nom_abonne"));
col[i+2].setText(rs.getString("prenom_abonne"));
col[i+3].setText(String.valueOf(rs.getInt("cp_abonne")));
col[i+4].setText(rs.getString("localite_abonne"));
col[i+5].setText(rs.getString("tel_abonne"));
col[i+6].setText(rs.getString("gsm_abonne"));
col[i+7].setText(rs.getString("email_abonne"));
i=+8;
}
}
catch(Exception ex){JOptionPane.showMessageDialog(null,"erreur SQL: "+ex.getMessage());}

Merci d'avance....
Commenter la réponse de abdesa1

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.