1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| public class MonTableModel extends AbstractTableModel
{
/** Contient le nom des colonnes de la JTable*/
private Vector nomColonnes;
/** Contient les données de la JTable (Vector à 2 dimensions:Vector de Vectors)*/
private Vector tableau;
/** Constructeur de la classe.*/
public MonTableModel(Vector nomColonnes, Vector tableau)
{
this.nomColonnes = nomColonnes;
majDonnees(tableau);
}
/** Met à jour les données de la JTable avec celles en paramètres*/
public void majDonnees(Vector nouvellesDonnees)
{
this.tableau = nouvellesDonnees;
fireTableDataChanged();
}
/** Retourne le nombre de lignes de la JTable */
public int getRowCount()
{
return tableau.size();
}
/** Retourne le nombre de colonnes de la <code>JTable</code> */
public int getColumnCount()
{
return nomColonnes.size();
}
/** Retourne la valeur stockée à la ligne row dans la colonne col*/
public Object getValueAt(int row, int col)
{
return ((Vector)( tableau.elementAt(row))).elementAt(col);
}
/** Retourne le nom de la colonne dont l'index est passé en paramètres */
public String getColumnName(int col)
{
return nomColonnes.elementAt(col).toString();
}
/** Retourne la Class des objets stockés dans la colonne c */
public Class getColumnClass(int c)
{
return getValueAt(0,c).getClass();
}
/** Retourne true si la cellule à la ligne row dans la colonne col est éditable */
public boolean isCellEditable(int row, int col)
{
// Aucune cellule ne doit être éditable (table de consultation seulement)
return false;
}
} |
Partager