Le JTable

Les modèles :

  • interface TableModel, qui définit getColumnNamegetColumnCount,getValueAt
  • DefaultTableModel


Trier les lignes :

  • Utiliser un SortFilterModel, qui fait l’intermédiaire avec le TableModel

Afficher des données selon le type rattaché à la colonne (getColumnClass) :

  • ImageIcon créera un JLabel avec le rendu graphique
  • Boolean créera une case à cocher
  • Object affichera le toString correspondant dans un JLabel

Pour créer des aperçu personnalisés, il faut créer son TableCellEditor. Les modifications apportées aux cellules sont reportées via la méthodesetValueAt. On définit un éditeur de la manière suivante :getColumnModel().getcolumn(i).setCellEditor();. L’installation d’un TableCellEditor revient à :

  • Installer un Editeur : isCellEditable doit renvyer true.
  • shouldSelectCell : On appelle ici l’affichage de la fenêtre d’édition.
  • gestion des interruptions et/ou annulations : cancelCellEditing, stopCellEditing

Gestion de la taille des colonnes :

  • setPreferredWidth, setMinimumwidth, setMaximumWidth
  • setResizable, setWidth
  • setAutoResizeMode (int Mode)

Gestion de la sélection des valeurs :

  • setRowSelectionAllowed : gère la séleciton des lignes
  • getSelectionModel().setSelectionMode(mode)
  • setColumnSelectionAllowed : gère la sélection des colonnes
  • getSelectedRows, getSelectedcolumns
  • setCellSelectionEnabled —> Annule la sélection de slignes et des colonnes, sélection par cellules.

gestion de l’affichage des colonnes :

  • getColumnModel().getColumn(i)…
  • table.removeColumn(i) : cache une colonne.
  • table.addColumn(i) : fait réapparaitre une colonne présente dans le modèle.
  • table.modeColumn : gestion de l’ordre des colonnes

Affichage des lignes :

  • addRow, insertRow, removeRow

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *