Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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.