APIdia Launch Partner
Top Description Fields Constructors Methods
javax.swing.event

public Class TableModelEvent

extends EventObject
Class Inheritance
Annotations
@SuppressWarnings:serial
Imports
java.util.EventObject, javax.swing.table.*

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 coordinate 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 JavaBeans has been added to the java.beans package. Please see java.beans.XMLEncoder.

Authors
Alan Chung, Philip Milne
See Also
TableModel

Field Summary

Modifier and TypeField and Description
public static final int
ALL_COLUMNS

Specifies all columns in a row or rows.

protected int
column

The column for the event.

public static final int
DELETE

Identifies the removal of rows or columns.

protected int
firstRow

The first row that has changed.

public static final int
HEADER_ROW

Identifies the header row.

public static final int
INSERT

Identifies the addition of new rows or columns.

protected int
lastRow

The last row that has changed.

protected int
type

The type of the event.

public static final int
UPDATE

Identifies a change to existing data.

Inherited from java.util.EventObject:
source

Constructor Summary

AccessConstructor and Description
public
TableModelEvent(TableModel
the TableModel affected by this event
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.

public
TableModelEvent(TableModel
the TableModel affected by this event
source
,
int
the row which has been updated
row
)

This row of data has been updated.

public
TableModelEvent(TableModel
the TableModel affected by this event
source
,
int
the first row affected by this event
firstRow
,
int
the last row affected by this event
lastRow
)

The data in rows [firstRow, lastRow] have been updated.

public
TableModelEvent(TableModel
the TableModel affected by this event
source
,
int
the first row affected by this event
firstRow
,
int
the last row affected by this event
lastRow
,
int
the column index of cells changed; ALL_COLUMNS signifies all cells in the specified range of rows are changed.
column
)

The cells in column column in the range [firstRow, lastRow] have been updated.

public
TableModelEvent(TableModel
the TableModel affected by this event
source
,
int
the first row affected by this event
firstRow
,
int
the last row affected by this event
lastRow
,
int
the column index of cells changed; ALL_COLUMNS signifies all cells in the specified range of rows are changed.
column
,
int
the type of change signified by this even, INSERT, DELETE or UPDATE
type
)

The cells from (firstRow, column) to (lastRow, column) have been changed.

Method Summary

Modifier and TypeMethod and Description
public int

Returns:

an integer signifying which column is affected by this event
getColumn
()

Returns the column for the event.

public int

Returns:

an integer signifying the first row changed
getFirstRow
()

Returns the first row that changed.

public int

Returns:

an integer signifying the last row changed
getLastRow
()

Returns the last row that changed.

public int

Returns:

the type of change to a table model, an INSERT or DELETE of row(s) or column(s) or UPDATE to data
getType
()

Returns the type of event - one of: INSERT, UPDATE and DELETE.

Inherited from java.util.EventObject:
getSourcetoString

Field Detail

ALL_COLUMNSback to summary
public static final int ALL_COLUMNS

Specifies all columns in a row or rows.

columnback to summary
protected int column

The column for the event.

DELETEback to summary
public static final int DELETE

Identifies the removal of rows or columns.

firstRowback to summary
protected int firstRow

The first row that has changed.

HEADER_ROWback to summary
public static final int HEADER_ROW

Identifies the header row.

INSERTback to summary
public static final int INSERT

Identifies the addition of new rows or columns.

lastRowback to summary
protected int lastRow

The last row that has changed.

typeback to summary
protected int type

The type of the event.

UPDATEback to summary
public static final int UPDATE

Identifies a change to existing data.

Constructor Detail

TableModelEventback to 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.

Parameters
source:TableModel

the TableModel affected by this event

TableModelEventback to summary
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.

Parameters
source:TableModel

the TableModel affected by this event

row:int

the row which has been updated

TableModelEventback to summary
public TableModelEvent(TableModel source, int firstRow, int lastRow)

The data in rows [firstRow, lastRow] have been updated.

Parameters
source:TableModel

the TableModel affected by this event

firstRow:int

the first row affected by this event

lastRow:int

the last row affected by this event

TableModelEventback to summary
public TableModelEvent(TableModel source, int firstRow, int lastRow, int column)

The cells in column column in the range [firstRow, lastRow] have been updated.

Parameters
source:TableModel

the TableModel affected by this event

firstRow:int

the first row affected by this event

lastRow:int

the last row affected by this event

column:int

the column index of cells changed; ALL_COLUMNS signifies all cells in the specified range of rows are changed.

TableModelEventback to summary
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 coordinate 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:TableModel

the TableModel affected by this event

firstRow:int

the first row affected by this event

lastRow:int

the last row affected by this event

column:int

the column index of cells changed; ALL_COLUMNS signifies all cells in the specified range of rows are changed.

type:int

the type of change signified by this even, INSERT, DELETE or UPDATE

Method Detail

getColumnback to 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.

Returns:int

an integer signifying which column is affected by this event

getFirstRowback to summary
public int getFirstRow()

Returns the first row that changed. HEADER_ROW means the meta data, ie. names, types and order of the columns.

Returns:int

an integer signifying the first row changed

getLastRowback to summary
public int getLastRow()

Returns the last row that changed.

Returns:int

an integer signifying the last row changed

getTypeback to summary
public int getType()

Returns the type of event - one of: INSERT, UPDATE and DELETE.

Returns:int

the type of change to a table model, an INSERT or DELETE of row(s) or column(s) or UPDATE to data