Start of Tutorial > Start of Trail > Start of Lesson | Search |
EachJTable
object has a table model that holds its data. When a table model listener is registered on the table model, the listener is notified every time the table model's data changes. TheJTable
itself automatically uses a table model listener to make its GUI reflect the current state of the table model. You register a table model listener using theTableModel
addTableModelListener
method.
TheTableModelListener
interface contains a single method, and thus has no corresponding adapter class. Here is the loneTableModelListener
method:The
void tableChanged(TableModelEvent)
- Called when the structure of or data in the table has changed.
tableChanged
method's argument is aTableModelEvent
object that specifies which cells changed, and how in general they changed. You can query theTableModelEvent
using the following methods:Also useful is the
int getFirstRow()
- Returns the index of the first row that changed.
TableModelEvent.HEADER_ROW
specifies the table header.int getLastRow()
- The last row that changed. Again,
HEADER_ROW
is a possible value.int getColumn()
- Returns the index of the column that changed. The constant
TableModelEvent.ALL_COLUMNS
specifies that all the columns might have changed.int getType()
- Specifies what happened to the changed cells. The returned value is one of the following:
TableModelEvent.INSERT
,TableModelEvent.DELETE
, orTableModelEvent.UPDATE
.getSource
method, whichTableModelEvent
inherits fromEventObject
.
The following table lists the examples that use table model listeners.
Example Where Described Notes TableMap
Sorting and Otherwise Manipulating Data A superclass for data-manipulating table models. It implements a table model that sits between a table data model and a JTable
. TheTableMap
listens for table model events from the data model, and then simply forwards them to its table model listeners (such as theJTable
).TableSorter
Sorting and Otherwise Manipulating Data A sorting table model implemented as a subclass of TableMap
. In addition to forwarding table model events, thetableChanged
method keeps track of the number of rows.SharedModelDemo
-- Does not implement a table model listener. Instead, it implements a combined list and table model.
Start of Tutorial > Start of Trail > Start of Lesson | Search |