class org.aswing.event.TableModelEvent extends ModelEvent
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.
@author paling
Class Fields
Instance Fields
![]() | Show inherited public instance fields | Hide inherited public instance fields
|
function new(source:TableModel, ?firstRow:Int = -2, ?lastRow:Int = -2, ?column:Int = -1, ?type:String = 'update'): Void
TableModelEvent(source:TableModel, firstRow:int, lastRow:int, column:int, type:String) TableModelEvent(source:TableModel, firstRow:int, lastRow:int, column:int) TableModelEvent(source:TableModel, firstRow:int, lastRow:int) TableModelEvent(source:TableModel, row:int) TableModelEvent(source:TableModel)
- TableModelEvent(source:TableModel, firstRow:int, lastRow:int, column:int, type:String)
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. - TableModelEvent(source:TableModel, firstRow:int, lastRow:int, column:int)
The cells in column column in the range [firstRow, lastRow] have been updated. - TableModelEvent(source:TableModel, firstRow:int, lastRow:int)
The data in rows [firstRow, lastRow] have been updated. - TableModelEvent(source:TableModel, row:int)
This row of data has been updated. To denote the arrival of a completely new table with a different structure useHEADER_ROW
as the value for therow
. When theJTable
receives this event and itsautoCreateColumnsFromModel
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 callingsetModel(TableModel)
on theJTable
. - TableModelEvent(source:TableModel)
All row data in the table has changed, listeners should discard any state that was based on the rows and requery theTableModel
to get the new row count and all the appropriate values. TheJTable
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.
Returns the column for the event. If the return value is ALL_COLUMNS; it means every column in the specified rows changed.
function getFirstRow(): Int
Returns the first row that changed. HEADER_ROW means the meta data, ie. names, types and order of the columns.