Comment masquer un particlar colonne dans DefaultTableModel de l'afficher dans un tableau?
Je suis à l'aide de Java Swingx cadre. J'ai 4 colonnes dans mon DefaultTableModel
objet. Je souhaite afficher uniquement les 3 colonnes. Mais, j'ai besoin de tous les quatre pour le calcul.
Réel modèle de données
S.No. | ID | GDC ID | Decsription
Ce que je veux afficher dans le tableau
S.No.| GDC ID | Decsription
Est-il possible de cacher ou d'omettre une seule colonne de rendu? Merci de me guider.
double possible de Comment faire des colonnes dans JTable Invisible pour le Swing de Java
OriginalL'auteur brainless | 2012-08-30
Vous devez vous connecter pour publier un commentaire.
par défaut, la taille minimale est de
10 pixels
largeur,vous pouvez supprimer /ajouter une colonne à partir de JTable vue, colonne présente dans le XxxTableModel, vous pouvez masquer et afficher l'un des colonne(s)
DefaultTableModel
, précédemment cité.OriginalL'auteur mKorbel
Aucun besoin d'ajuster votre modèle, ou à essayer de faire que la colonne est très petite.
JTable
dispose d'une fonctionnalité intégrée pour cela: leremoveColumn
méthode. Comme indiqué dans la javadoc de cette méthodeÉgalement noter l'existence des méthodes suivantes:
JTable#convertColumnIndexToModel
JTable#convertColumnIndexToView
Depuis l'ordre des colonnes et le nombre de colonnes dans la vue (la
JTable
) peut être différent de celui du modèle que vous avez besoin de ces méthodes pour basculer entre la vue et le modèleOriginalL'auteur Robin
Vous pouvez le masquer en définissant sa largeur à 0.
OriginalL'auteur Dan D.
essayez ceci pour supprimer une colonne unique:
Alors de montrer la colonne de nouveau de maintien de l'ordre:
Désolé, mais c'est le meilleur moyen que je connaisse.
OriginalL'auteur august0490
Vous manipulez l'getValueAt , getColumnCount pour atteindre cet objectif.
Ainsi, par exemple, la getColumnCount vous la donner en 3
et sur getValueAt à ignorer si l'index de colonne est au-dessus de la sauté colonne
JTable sera d'abord appel getColumnCount et getRowCount et de chercher de l'appelant getValueAt pour chacune des cellules.
REMARQUE: Ignorez-le et voir le lien par trashgod ci-dessous.
JTable
affiche uniquement ce que l'TableModel
offre; voir aussi cette autres.Vous ne devriez pas toucher/modifier le
TableModel
pour ce que l'JTable
a cette fonctionnalité intégrée. Voir ma réponse ou @trashgod lien. Si vous optez pour le modèle-modification, je suggère d'utiliser un décorateurd'accord, je pense que c'est une meilleure solution.
Oui, j'ai négligé l'utilisation de
DefaultTableModel
. Votre et mKorbel la réponse sera sans doute plus facile dans ce contexte. J'ai souvent l'utilisation de Sid approche dans une sous-classe deAbstractTableModel
. Selon l'utilisation, sans cervelle peut encore envisager cette option.OriginalL'auteur Sid Malani