Scrollpane et panel :)

ricool Messages postés 22 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 24 juillet 2005 - 31 déc. 2004 à 14:48
ricool Messages postés 22 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 24 juillet 2005 - 4 janv. 2005 à 15:04
Bonjour

j'ai un petit probleme de mise en page d'une jdialog

en effet, dans celle ci je dois faire apparaitre le contenu d'un fichier text represnetant des scores
nick;level;date

je cre mon panel
gridlayout(3, N (nb ligne fichier))

et lit le fichier et j'ajoute des jlabel

bref rien de bien compliker
a la fin je fait
JScrollPane scroll = new JScrollPane(panel);
this.getContentPane().add(scroll);
this.setTitle("Scores");
this.setSize(400,600);

le probleme c ke mes scroll barre ne s'affiche qu'a une condition
ke je'affiche le cote bas droite de mon panel
??? j'ai du louper kelke chose ds la javadoc :D

pr me comprendre voici mon code

String ligne, chaine;
Panel panel2;
JScrollPane scroll;
v = new Vector();

try {
lecteur = new FileReader(this.mRepertoire + "/score.score");
entree = new BufferedReader(lecteur);

while ((ligne = entree.readLine()) != null) {
string_token = new StringTokenizer(ligne, ";");
while (string_token.hasMoreTokens()) {
v.addElement(string_token.nextToken());
}
}

panel2 = new Panel();
panel2.setLayout(new GridLayout(v.size() / 3 + 1, 3));

panel2.add(new JLabel(" Nom du joueur", SwingConstants.CENTER));
panel2.add(new JLabel(" Level atteint", SwingConstants.CENTER));
panel2.add(new JLabel(" date", SwingConstants.CENTER));

for(int i = 0; i < v.size(); i += 3) {
panel2.add(new JLabel(" "+(String)v.get(i), SwingConstants.CENTER));
panel2.add(new JLabel(" "+(String)v.get(i+1), SwingConstants.CENTER));
panel2.add(new JLabel(" "+(String)v.get(i+2), SwingConstants.CENTER));
}

scroll = new JScrollPane(panel2);
this.getContentPane().add(scroll);
this.setTitle("Scores");
this.setSize(400,600);
this.setResizable(false);

this.show();
} catch (Exception e) {
pane = new JOptionPane();
pane.showMessageDialog(this, e.getMessage(), "erreur", JOptionPane.ERROR_MESSAGE);
}

si vous pouviez m'eclaircir les idée

ricool

2 réponses

indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 22
4 janv. 2005 à 13:16
Slut
si tu veux absolument que tes scrollbars s'affichent, tu les forcer au moment de son initialisation (par défaut, il se contente de les afficher que si c'est nécessaire) :

JScrollPane scroll = new JScrollPane(panel,VERTICAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_ALWAYS);

Voilà

[Tout le monde a des idées : la preuve, c'est qu'il y en a de mauvaises]
0
ricool Messages postés 22 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 24 juillet 2005
4 janv. 2005 à 15:04
lu

ok d'accord compris, cela dit j'ai rajoute ca a mon code
et cela ne change ne rien (a moins qu'il y est une erreur autre part c possible)

voici une screenshot de la fenetre un bout de screen

en fait mon panel passe au dessus du jscrolpane
voila
0
Rejoignez-nous