
however, many applications need a custom TableModel implementation. Most applica-
tions find it easer to subclass AbstractTableModel than to implement TableModel fr om
scratch.
public abstract interface TableModel {
// Event Registration Methods (by event name)
public abstract void addTableModelListener(javax.swing .e vent.TableModelListener l);
public abstract void removeTableModelListener(javax.swing .e vent.TableModelListener l);
// Public Instance Methods
public abstract Class getColumnClass(int columnIndex);
public abstract int getColumnCount();
public abstract String getColumnName(int columnIndex);
public abstract int getRowCount();
public abstract Object getValueAt(int rowIndex, int columnIndex);
public abstract boolean isCellEditable(int rowIndex, int columnIndex);
public abstract void setValueAt(Object aValue, int rowIndex, int columnIndex);
}
Implementations: AbstractTableModel
Passed To: JTable.{JTable(), setModel()}, javax.swing .event.TableModelEvent.TableModelEvent()
Retur ned By: JTable.{createDefaultDataModel(), getModel()}
Type Of: JTable.dataModel
javax.swing.table.TableModel
578 Chapter 29 – The javax.swing.table Package
14 September 1999 10:32