Figer les en-têtes (JTableHeader) d'un tableau (JTable)

kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 - 7 déc. 2005 à 11:36
kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 - 12 déc. 2005 à 11:49
Bonjour,

j'ai un tableau qui se trouve dans un composant jScrollPane.
J'aimerais, que lorsque j'utilise le scroll à droite pour descendre, les headers restent apparants, c'est à dire le même principe que lorsqu'on fige la première ligne sous excel

Existe-t-il une fonction ou une astuce pour faire ceci
En remerciant par avance.

Kobee12

11 réponses

cs_Zart Messages postés 285 Date d'inscription jeudi 29 juillet 2004 Statut Membre Dernière intervention 27 juin 2006 1
7 déc. 2005 à 13:07
Essai ça tu devrais trouver ton bonheur...
http://java.sun.com/docs/books/tutorial/uiswing/components/table.html
Ou pour que ce soit plus simple essai ça :
table.setPreferredScrollableViewportSize(new Dimension(500, 70));
JScrollPane scrollPane = new JScrollPane(table);
0
jcodeunpeu Messages postés 365 Date d'inscription mercredi 9 novembre 2005 Statut Membre Dernière intervention 2 décembre 2006 2
7 déc. 2005 à 21:36
bonsoir, j'ai du mal à savoir si tu entends une JTable par tableau.....
peux tu dire ce qu'il en est?
0
jcodeunpeu Messages postés 365 Date d'inscription mercredi 9 novembre 2005 Statut Membre Dernière intervention 2 décembre 2006 2
7 déc. 2005 à 21:38
bonsoir, j'ai du mal à savoir si tu entends une JTable par tableau.....
peux tu dire ce qu'il en est?
la ligne des noms de colonnes est distincte des autres lignes qui compose la table, comment tu construit la table ?
0
kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 1
8 déc. 2005 à 08:18
Salut à tous!!

En fait c'est moi qui me suis mélangé les pinceaux.
En effet les headers restent bien en haut du tableau.
J'utilisais un autre scroll qui ne faissait pas partie du tableau mais qui se trouvait également à droite.
Bref, une question un peu inutile...

Par contre, j'en ai une autre question :
Est-il possible d'ajouter des en-têtes à gauche des lignes de mon tableau.

Kobee12
0

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

Posez votre question
jcodeunpeu Messages postés 365 Date d'inscription mercredi 9 novembre 2005 Statut Membre Dernière intervention 2 décembre 2006 2
8 déc. 2005 à 10:51
Salut kobee12,
si tu veux dire des indices par exemple, ça devrait faire l'objet d'une colonne sup je pense.
0
kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 1
8 déc. 2005 à 13:01
oui, c'est vrai on peut faire comme ça.
Seulement, est ce qu'on peut figer la colonne comme pour les en-têtes de façon à ce que lorsqu'on a un scroll horizontal on puisse voir toujours l'indice correspondant à la ligne
0
kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 1
8 déc. 2005 à 14:31
J'ai trouvé un truc super pour les indices :
http://www.chka.de/swing/table/row-headers/JTable.html

A + tout le monde

kobee12
0
jcodeunpeu Messages postés 365 Date d'inscription mercredi 9 novembre 2005 Statut Membre Dernière intervention 2 décembre 2006 2
8 déc. 2005 à 15:00
re,
çà à l'air vraiment bien, mais peux-tu montrer un exemple de comment tu l'as adapté à ta JTable ...?
A+
0
kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 1
8 déc. 2005 à 15:13
Je ne l'ai pas encore adapté à ma jtable
Par contre il te propose un exemple simple de ce que ça donne :
Crée un projet avec les sources suivantes :


RowHeaderRenderer.java JScrollPaneAdjuster.java JTableRowHeaderResizer.java RowHeaderTable.java
0
cs_Zart Messages postés 285 Date d'inscription jeudi 29 juillet 2004 Statut Membre Dernière intervention 27 juin 2006 1
9 déc. 2005 à 14:23
Je vois pas trop l'utilité mais bon et bien je crois que tu peux adapter l'orientation qui se trouve en tête et du coup tu pourrais le mettre à gauche !
Sinon tu n'as qu'à redefinir ta propre classe JTable tu fais du mimétisme ?!?
0
kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 1
12 déc. 2005 à 11:49
L'intérêt est justement d'eviter d'adapter l'orientation de l'en-tête puisqu'il existe une fonction pour les indices.
"jTable.setRowHeaderView(leComposantIndice);"
'leComposantIndice' peut être ce que tu veux comme composant, un jtable d'une seule colonne comme dans l'exemple, un jpanel...
Donc pour avoir les indices à gauche d'un tableau, pas besoin de redefinir une classe ou d'essayer d'adapter l'orientation, il faut juste utiliser la fonction setRowHeaderView().
0
Rejoignez-nous