java.lang.Object
java.util.EventObject
javax.swing.event.TableModelEvent
- 所有已实现的接口:
-
Serializable
TableModelEvent 用于通知监听器表格模型已更改。该模型事件描述了对 TableModel 的更改,所有对行和列的引用都在模型的坐标系中。根据构造函数中使用的参数,TableModelEvent 可用于指定以下类型的更改:
TableModelEvent(source); // 数据,即所有行已更改 TableModelEvent(source, HEADER_ROW); // 结构更改,重新分配 TableColumns TableModelEvent(source, 1); // 第 1 行已更改 TableModelEvent(source, 3, 6); // 第 3 行到第 6 行(包括)已更改 TableModelEvent(source, 2, 2, 6); // 单元格 (2, 6) 已更改 TableModelEvent(source, 3, 6, ALL_COLUMNS, INSERT); // 第 3 行到第 6 行已插入 TableModelEvent(source, 3, 6, ALL_COLUMNS, DELETE); // 第 3 行到第 6 行已删除可以使用其他参数组合,但并非所有都有意义。通过子类化,可以添加其他信息,例如:事件是否将发生或已发生。这使得在 DELETE 事件中指定行的规范更有用,但由于 JTable 只需要后事件通知,因此未包含在 swing 包中。
警告: 该类的序列化对象将不兼容未来的 Swing 版本。当前的序列化支持适用于短期存储或在运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版开始,已将对所有 JavaBeans 的长期存储支持添加到 java.beans 包中。请参见 XMLEncoder。
- 参见:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int指定一行或多行中的所有列。protected int事件的列。static final int标识行或列的移除。protected int已更改的第一行。static final int标识标题行。static final int标识新行或列的添加。protected int已更改的最后一行。protected int事件的类型。static final int标识对现有数据的更改。Fields declared in class java.util.EventObject
source -
Constructor Summary
ConstructorsConstructorDescriptionTableModelEvent(TableModel source) 表中的所有行数据已更改,监听器应丢弃基于行的任何状态并重新查询TableModel以获取新的行数和所有适当的值。TableModelEvent(TableModel source, int row) 此数据行已更新。TableModelEvent(TableModel source, int firstRow, int lastRow) 行 [firstRow, lastRow] 中的数据已更新。TableModelEvent(TableModel source, int firstRow, int lastRow, int column) 列 column 中范围 [firstRow, lastRow] 的单元格已更新。TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type) 从 (firstRow, column) 到 (lastRow, column) 的单元格已更改。 -
Method Summary
Modifier and TypeMethodDescriptionint返回事件的列。int返回已更改的第一行。int返回已更改的最后一行。intgetType()返回事件的类型 - INSERT、UPDATE 和 DELETE 中的一种。Methods declared in class java.util.EventObject
getSource, toString
-
Field Details
-
INSERT
public static final int INSERT标识新行或列的添加。- 参见:
-
UPDATE
public static final int UPDATE标识对现有数据的更改。- 参见:
-
DELETE
public static final int DELETE标识行或列的移除。- 参见:
-
HEADER_ROW
public static final int HEADER_ROW标识标题行。- 参见:
-
ALL_COLUMNS
public static final int ALL_COLUMNS指定一行或多行中的所有列。- 参见:
-
type
protected int type事件的类型。 -
firstRow
protected int firstRow已更改的第一行。 -
lastRow
protected int lastRow已更改的最后一行。 -
column
protected int column事件的列。
-
-
Constructor Details
-
TableModelEvent
表中的所有行数据已更改,监听器应丢弃基于行的任何状态并重新查询TableModel以获取新的行数和所有适当的值。在收到此事件时,JTable将重新绘制整个可见区域,查询模型以获取可见的单元格值。表的结构,即列名、类型和顺序未更改。- 参数:
-
source- 受此事件影响的TableModel
-
TableModelEvent
此数据行已更新。要表示具有不同结构的全新表格的到达,请将HEADER_ROW用作row的值。当JTable收到此事件并且其autoCreateColumnsFromModel标志已设置时,它会丢弃任何已有的 TableColumns,并按照它们在模型中出现的顺序重新分配默认的 TableColumns。这与在JTable上调用setModel(TableModel)相同。- 参数:
-
source- 受此事件影响的TableModel -
row- 已更新的行
-
TableModelEvent
行 [firstRow, lastRow] 中的数据已更新。- 参数:
-
source- 受此事件影响的TableModel -
firstRow- 受此事件影响的第一行 -
lastRow- 受此事件影响的最后一行
-
TableModelEvent
列 column 中范围 [firstRow, lastRow] 的单元格已更新。- 参数:
-
source- 受此事件影响的TableModel -
firstRow- 受此事件影响的第一行 -
lastRow- 受此事件影响的最后一行 -
column- 更改的单元格的列索引;ALL_COLUMNS表示更改指定行范围内的所有单元格。
-
TableModelEvent
从 (firstRow, column) 到 (lastRow, column) 的单元格已更改。这里的 column 指的是模型坐标系中单元格的列索引。当 column 为 ALL_COLUMNS 时,将认为更改了指定行范围内的所有单元格。type 应为 INSERT、UPDATE 和 DELETE 中的一种。
- 参数:
-
source- 受此事件影响的TableModel -
firstRow- 受此事件影响的第一行 -
lastRow- 受此事件影响的最后一行 -
column- 更改的单元格的列索引;ALL_COLUMNS表示更改指定行范围内的所有单元格。 -
type- 此事件表示的更改类型,INSERT、DELETE或UPDATE
-
-
Method Details
-
getFirstRow
public int getFirstRow()返回已更改的第一行。HEADER_ROW 表示元数据,即列的名称、类型和顺序。- 返回:
- 一个整数,表示已更改的第一行
-
getLastRow
public int getLastRow()返回已更改的最后一行。- 返回:
- 一个整数,表示已更改的最后一行
-
getColumn
public int getColumn()返回事件的列。如果返回值为 ALL_COLUMNS,则表示指定行中的每列都已更改。- 返回:
- 一个整数,表示受此事件影响的列
-
getType
public int getType()返回事件的类型 - INSERT、UPDATE 和 DELETE 中的一种。- 返回:
-
表模型的更改类型,行或列的
INSERT或DELETE,或数据的UPDATE
-