begin process at 2008 08 28 16:06:30
1 233 191 membres
293 nouveaux aujourd'hui
14 291 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

COLONNES D'UNE JTABLE: FAIRE DISPARAÎTRE ET INSÉRER À NOUVEAU


Information sur la source

Catégorie :Swing Classé sous : JTable, colonne, invisible, cacher Niveau : Initié Date de création : 06/02/2008 Date de mise à jour : 18/03/2008 11:26:57 Vu / téléchargé: 5 149 / 399

Note :
Aucune note

Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

Description

Cette variante laisse les colonnes inchangées dans le TableModel et les fait disparaître en mettant à zéro la largeur de colonne. L'ancienne largeur est sauvegardée, pour pouvoir insérer à nouveau la colonne avec la même largeur. Puisque les colonnes restent dans le TableModel, elles continuent d'être disponibles la dedans.
IMPORTANT: Le comportement des touches Tab, Flèches, Enter, HOME et END a été adapté, pourqu'on ne puisse plus atteindre les colonnes disparues!

Conclusion

Bien qu'il existe déja une source ici sur le même sujet, j'ai jugé utile de mettre à disposition une variante qui va plus loin.
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

06 février 2008 18:04:35 :
Nouvelle capture
07 février 2008 01:00:10 :
J'ai ajouté ces lignes dans setColumnVisible: int selCol = getSelectedColumn(); if (selCol == convertColumnIndexToView(columnIndex)) { setFocusable(false); setFocusable(true); } Ce code a pour effet, qu'une colonne sélectionnée ne peut pas être modifiée lorsqu'elle a disparu.
09 février 2008 00:13:15 :
Nouveau Zip avec refactoring des classes anonymes et ajout de commentaires. Pas de modifications dans la logique du code.
10 février 2008 00:05:29 :
J'ai intégré le sélecteur de colonnes dans la table. Un clique droit sur l'entête de colonne affiche le sélecteur.
10 février 2008 03:00:10 :
J'ai remplacé la classe "TableHideColumn" par "TableColumnSelector" qui n'est plus une extension de JTable. Comme ça, elle est plus facile a utiliser. Il n'est plus possible de faire disparaître toutes les colonnes en même temps. Au moins une colonne restera visible. Si on fait disparaître une cellule sélectionnée, la prochaine cellule sera automatiquement sélectionnée. Ainsi, il sera impossible de modifier une cellule cachée.
17 février 2008 17:51:38 :
Nouvelle capture.
17 février 2008 17:54:48 :
Nouvelle capture
18 mars 2008 06:16:23 :
Dans "TableColumnSelector" j'ai enlevé la méthode "getInstance". En effet, dans le cas de plusieurs "JTable"s, on doit pouvoir installer plusieurs sélecteurs (c'est à dire un par JTable, voir la méthode "install"). En plus, la méthode hide() permet de désactiver le sélecteur visuel, et deux autres méthodes permettent de cacher une colonne par programmation de façon temporaire (hideColumn) ou permanente (hideColumnAlways, util quand le sélecteur visuel reste activé). Exemple d'utilisation: TableColumnSelector selector = TableColumnSelector.install(table); selector.hideColumn(1); selector.hide();
18 mars 2008 06:37:02 :
Nouvelle capture.
18 mars 2008 10:48:30 :
J'ai ajouté le traitement des touches HOME et END.
18 mars 2008 11:26:57 :
Correction d'un bogue: avec certaines combinaisons de touches (p.ex. maj + flèche gauche) on pouvait accéder à une colonne cachée.
    Aucun commentaire pour le moment.

Ajouter un commentaire

Pub



Appels d'offres

Recherche developpeur ...
Budget : 700€
SITE MARCHAND LOCATION...
Budget : 3 000€
SITE MARCHAND POUR HOTEL
Budget : 4 000€

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS