java.lang.Object
java.util.EventObject
javax.swing.event.TableModelEvent
- All Implemented Interfaces:
Serializable
public 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 deletedIt 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 JavaBeans™
has been added to the java.beans package.
Please see XMLEncoder.
- See Also:
TableModel
-
Field Summary
Fields Modifier and Type Field Description static intALL_COLUMNSSpecifies all columns in a row or rows.protected intcolumnThe column for the event.static intDELETEIdentifies the removal of rows or columns.protected intfirstRowThe first row that has changed.static intHEADER_ROWIdentifies the header row.static intINSERTIdentifies the addition of new rows or columns.protected intlastRowThe last row that has changed.protected inttypeThe type of the event.static intUPDATEIdentifies a change to existing data. -
Constructor Summary
Constructors Constructor Description TableModelEvent(TableModel source)All row data in the table has changed, listeners should discard any state that was based on the rows and requery theTableModelto get the new row count and all the appropriate values.TableModelEvent(TableModel source, int row)This row of data has been updated.TableModelEvent(TableModel source, int firstRow, int lastRow)The data in rows [firstRow, lastRow] have been updated.TableModelEvent(TableModel source, int firstRow, int lastRow, int column)The cells in column column in the range [firstRow, lastRow] have been updated.TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type)The cells from (firstRow, column) to (lastRow, column) have been changed. -
Method Summary
Modifier and Type Method Description intgetColumn()Returns the column for the event.intgetFirstRow()Returns the first row that changed.intgetLastRow()Returns the last row that changed.intgetType()Returns the type of event - one of: INSERT, UPDATE and DELETE.
-
Field Details
-
INSERT
public static final int INSERTIdentifies the addition of new rows or columns.- See Also:
- Constant Field Values
-
UPDATE
public static final int UPDATEIdentifies a change to existing data.- See Also:
- Constant Field Values
-
DELETE
public static final int DELETEIdentifies the removal of rows or columns.- See Also:
- Constant Field Values
-
HEADER_ROW
public static final int HEADER_ROWIdentifies the header row.- See Also:
- Constant Field Values
-
ALL_COLUMNS
public static final int ALL_COLUMNSSpecifies all columns in a row or rows.- See Also:
- Constant Field Values
-
type
protected int typeThe type of the event. -
firstRow
protected int firstRowThe first row that has changed. -
lastRow
protected int lastRowThe last row that has changed. -
column
protected int columnThe column for the event.
-
-
Constructor Details
-
TableModelEvent
All row data in the table has changed, listeners should discard any state that was based on the rows and requery theTableModelto get the new row count and all the appropriate values. TheJTablewill 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.- Parameters:
source- theTableModelaffected by this event
-
TableModelEvent
This row of data has been updated. To denote the arrival of a completely new table with a different structure useHEADER_ROWas the value for therow. When theJTablereceives this event and itsautoCreateColumnsFromModelflag 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.- Parameters:
source- theTableModelaffected by this eventrow- the row which has been updated
-
TableModelEvent
The data in rows [firstRow, lastRow] have been updated.- Parameters:
source- theTableModelaffected by this eventfirstRow- the first row affected by this eventlastRow- the last row affected by this event
-
TableModelEvent
The cells in column column in the range [firstRow, lastRow] have been updated.- Parameters:
source- theTableModelaffected by this eventfirstRow- the first row affected by this eventlastRow- the last row affected by this eventcolumn- the column index of cells changed;ALL_COLUMNSsignifies all cells in the specified range of rows are changed.
-
TableModelEvent
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.
- Parameters:
source- theTableModelaffected by this eventfirstRow- the first row affected by this eventlastRow- the last row affected by this eventcolumn- the column index of cells changed;ALL_COLUMNSsignifies all cells in the specified range of rows are changed.type- the type of change signified by this even,INSERT,DELETEorUPDATE
-
-
Method Details
-
getFirstRow
public int getFirstRow()Returns the first row that changed. HEADER_ROW means the meta data, ie. names, types and order of the columns.- Returns:
- an integer signifying the first row changed
-
getLastRow
public int getLastRow()Returns the last row that changed.- Returns:
- an integer signifying the last row changed
-
getColumn
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.- Returns:
- an integer signifying which column is affected by this event
-
getType
public int getType()Returns the type of event - one of: INSERT, UPDATE and DELETE.- Returns:
- the type of change to a table model, an
INSERTorDELETEof row(s) or column(s) orUPDATEto data
-