Java™ Platform
Standard Ed. 6

javax.swing.table
Interface TableModel

All Known Implementing Classes:
AbstractTableModel, DefaultTableModel

public interface TableModel

The TableModel interface specifies the methods the JTable will use to interrogate a tabular data model.

The JTable can be set up to display any data model which implements the TableModel interface with a couple of lines of code:

        TableModel myData = new MyTableModel(); 
        JTable table = new JTable(myData);
  

For further documentation, see Creating a Table Model in The Java Tutorial.

See Also:
JTable

Method Summary
 void addTableModelListener(TableModelListener l)
          Adds a listener to the list that is notified each time a change to the data model occurs.
 Class<?> getColumnClass(int columnIndex)
          Returns the most specific superclass for all the cell values in the column.
 int getColumnCount()
          Returns the number of columns in the model.
 String getColumnName(int columnIndex)
          Returns the name of the column at columnIndex.
 int getRowCount()
          Returns the number of rows in the model.
 Object getValueAt(int rowIndex, int columnIndex)
          Returns the value for the cell at columnIndex and rowIndex.
 boolean isCellEditable(int rowIndex, int columnIndex)
          Returns true if the cell at rowIndex and columnIndex is editable.
 void removeTableModelListener(TableModelListener l)
          Removes a listener from the list that is notified each time a change to the data model occurs.
 void setValueAt(Object aValue, int rowIndex, int columnIndex)
          Sets the value in the cell at columnIndex and rowIndex to aValue.
 

Method Detail

getRowCount

int getRowCount()
Returns the number of rows in the model. A JTable uses this method to determine how many rows it should display. This method should be quick, as it is called frequently during rendering.

Returns:
the number of rows in the model
See Also:
getColumnCount()

getColumnCount

int getColumnCount()
Returns the number of columns in the model. A JTable uses this method to determine how many columns it should create and display by default.

Returns:
the number of columns in the model
See Also:
getRowCount()

getColumnName

String getColumnName(int columnIndex)
Returns the name of the column at columnIndex. This is used to initialize the table's column header name. Note: this name does not need to be unique; two columns in a table can have the same name.

Parameters:
columnIndex - the index of the column
Returns:
the name of the column

getColumnClass

Class<?> getColumnClass(int columnIndex)
Returns the most specific superclass for all the cell values in the column. This is used by the JTable to set up a default renderer and editor for the column.

Parameters:
columnIndex - the index of the column
Returns:
the common ancestor class of the object values in the model.

isCellEditable

boolean isCellEditable(int rowIndex,
                       int columnIndex)
Returns true if the cell at rowIndex and columnIndex is editable. Otherwise, setValueAt on the cell will not change the value of that cell.

Parameters:
rowIndex - the row whose value to be queried
columnIndex - the column whose value to be queried
Returns:
true if the cell is editable
See Also:
setValueAt(java.lang.Object, int, int)

getValueAt

Object getValueAt(int rowIndex,
                  int columnIndex)
Returns the value for the cell at columnIndex and rowIndex.

Parameters:
rowIndex - the row whose value is to be queried
columnIndex - the column whose value is to be queried
Returns:
the value Object at the specified cell

setValueAt

void setValueAt(Object aValue,
                int rowIndex,
                int columnIndex)
Sets the value in the cell at columnIndex and rowIndex to aValue.

Parameters:
aValue - the new value
rowIndex - the row whose value is to be changed
columnIndex - the column whose value is to be changed
See Also:
getValueAt(int, int), isCellEditable(int, int)

addTableModelListener

void addTableModelListener(TableModelListener l)
Adds a listener to the list that is notified each time a change to the data model occurs.

Parameters:
l - the TableModelListener

removeTableModelListener

void removeTableModelListener(TableModelListener l)
Removes a listener from the list that is notified each time a change to the data model occurs.

Parameters:
l - the TableModelListener

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.