Module java.desktop

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