TableModelEventpublic class TableModelEvent extends EventObject TableModelEvent is used to notify listeners that a table model
has changed. The model event describes changes to a TableModel
and all references to rows and columns are in the co-ordinate
system of the model.
Depending on the parameters used in the constructors, the TableModelevent
can be used to specify the following types of changes:
TableModelEvent(source); // The data, ie. all rows changed
TableModelEvent(source, HEADER_ROW); // Structure change, reallocate TableColumns
TableModelEvent(source, 1); // Row 1 changed
TableModelEvent(source, 3, 6); // Rows 3 to 6 inclusive changed
TableModelEvent(source, 2, 2, 6); // Cell at (2, 6) changed
TableModelEvent(source, 3, 6, ALL_COLUMNS, INSERT); // Rows (3, 6) were inserted
TableModelEvent(source, 3, 6, ALL_COLUMNS, DELETE); // Rows (3, 6) were deleted
It is possible to use other combinations of the parameters, not all of them
are meaningful. By subclassing, you can add other information, for example:
whether the event WILL happen or DID happen. This makes the specification
of rows in DELETE events more useful but has not been included in
the swing package as the JTable only needs post-event notification.
Warning:
Serialized objects of this class will not be compatible with
future Swing releases. The current serialization support is
appropriate for short term storage or RMI between applications running
the same version of Swing. As of 1.4, support for long term storage
of all JavaBeansTM
has been added to the java.beans package.
Please see {@link java.beans.XMLEncoder}. |
Fields Summary |
---|
public static final int | INSERTIdentifies the addtion of new rows or columns. | public static final int | UPDATEIdentifies a change to existing data. | public static final int | DELETEIdentifies the removal of rows or columns. | public static final int | HEADER_ROWIdentifies the header row. | public static final int | ALL_COLUMNSSpecifies all columns in a row or rows. | protected int | type | protected int | firstRow | protected int | lastRow | protected int | column |
Constructors Summary |
---|
public TableModelEvent(TableModel source)All row data in the table has changed, listeners should discard any state
that was based on the rows and requery the TableModel
to get the new row count and all the appropriate values.
The JTable will repaint the entire visible region on
receiving this event, querying the model for the cell values that are visible.
The structure of the table ie, the column names, types and order
have not changed.
//
// Constructors
//
// Use Integer.MAX_VALUE instead of getRowCount() in case rows were deleted.
this(source, 0, Integer.MAX_VALUE, ALL_COLUMNS, UPDATE);
| public TableModelEvent(TableModel source, int row)This row of data has been updated.
To denote the arrival of a completely new table with a different structure
use HEADER_ROW as the value for the row .
When the JTable receives this event and its
autoCreateColumnsFromModel
flag is set it discards any TableColumns that it had and reallocates
default ones in the order they appear in the model. This is the
same as calling setModel(TableModel) on the JTable .
this(source, row, row, ALL_COLUMNS, UPDATE);
| public TableModelEvent(TableModel source, int firstRow, int lastRow)The data in rows [firstRow, lastRow] have been updated.
this(source, firstRow, lastRow, ALL_COLUMNS, UPDATE);
| public TableModelEvent(TableModel source, int firstRow, int lastRow, int column)The cells in column column in the range
[firstRow, lastRow] have been updated.
this(source, firstRow, lastRow, column, UPDATE);
| public TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type)The cells from (firstRow, column) to (lastRow, column) have been changed.
The column refers to the column index of the cell in the model's
co-ordinate system. When column is ALL_COLUMNS, all cells in the
specified range of rows are considered changed.
The type should be one of: INSERT, UPDATE and DELETE.
super(source);
this.firstRow = firstRow;
this.lastRow = lastRow;
this.column = column;
this.type = type;
|
Methods Summary |
---|
public int | getColumn()Returns the column for the event. If the return
value is ALL_COLUMNS; it means every column in the specified
rows changed. return column;
| public int | getFirstRow()Returns the first row that changed. HEADER_ROW means the meta data,
ie. names, types and order of the columns. return firstRow;
| public int | getLastRow()Returns the last row that changed. return lastRow;
| public int | getType()Returns the type of event - one of: INSERT, UPDATE and DELETE. return type;
|
|