Класс TableModelEvent
- java.lang.Object
-
- java.util.EventObject
-
- javax.swing.event.TableModelEvent
- Все реализованные интерфейсы:
Serializable
public class TableModelEvent extends EventObject
TableModelEvent используется для уведомления слушателей о том, что модель таблицы изменилась. Событие модели описывает изменения в TableModel, и все ссылки на строки и столбцы находятся в системе координат модели. В зависимости от параметров, используемых в конструкторах, TableModelevent может быть использован для указания следующих типов изменений:
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Можно использовать и другие комбинации параметров, не все из них имеют смысл. Путем наследования вы можете добавить другую информацию, например: произойдёт ли событие или уже произошло. Это делает указание строк в событиях DELETE более полезным, но не было включено в пакет swing, так как JTable нуждается только в уведомлении после события.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans™ была добавлена в пакет java.beans. Пожалуйста, см. XMLEncoder.
- См. также:
-
TableModel, Сериализованная форма
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
static int | ALL_COLUMNS | Указывает все столбцы в строке или строках. |
protected int | column | Столбец для события. |
static int | DELETE | Идентифицирует удаление строк или столбцов. |
protected int | firstRow | Первая строка, которая изменилась. |
static int | HEADER_ROW | Идентифицирует строку заголовка. |
static int | INSERT | Идентифицирует добавление новых строк или столбцов. |
protected int | lastRow | Последняя строка, которая изменилась. |
protected int | type | Тип события. |
static int | UPDATE | Идентифицирует изменение существующих данных. |
Поля, объявленные в классе java.util.EventObject
source Конструкторы
| Конструктор | Описание |
|---|---|
TableModelEvent(TableModel source) | Все данные строк в таблице изменились, слушатели должны отбросить любые данные, основанные на строках, и повторно запросить |
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) были изменены. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
int | getColumn() | Возвращает столбец для события. |
int | getFirstRow() | Возвращает первую изменённую строку. |
int | getLastRow() | Возвращает последнюю изменённую строку. |
int | getType() | Возвращает тип события — один из: INSERT, UPDATE и DELETE. |
Методы, объявленные в классе java.util.EventObject
getSource, toString Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Поля
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
Столбец для события.
Конструкторы
TableModelEvent
public TableModelEvent(TableModel source)
Все данные строк в таблице были изменены, обработчики должны игнорировать любое состояние, которое основывалось на строках, и повторно запросить TableModel для получения нового количества строк и всех соответствующих значений. JTable перерисует всю видимую область при получении этого события, запрашивая у модели значения ячеек, которые видны. Структура таблицы, т. е. имена, типы и порядок столбцов, не изменились.
- Параметры:
-
source- таблицаTableModel, затронутая этим событием
TableModelEvent
public TableModelEvent(TableModel source,
int row) Эта строка данных была обновлена. Чтобы обозначить поступление совершенно новой таблицы с другой структурой, используйте HEADER_ROW в качестве значения для row. При получении этого события JTable и autoCreateColumnsFromModel флагом установленным, он отбрасывает все TableColumns, которые у него были, и перераспределяет стандартные в том порядке, в котором они появляются в модели. Это то же самое, что вызов setModel(TableModel) в JTable.
- Параметры:
-
source- таблицаTableModel, затронутая этим событием -
row- строка, которая была обновлена
TableModelEvent
public TableModelEvent(TableModel source,
int firstRow,
int lastRow) Данные в строках [firstRow, lastRow] были обновлены.
- Параметры:
-
source- таблицаTableModel, затронутая этим событием -
firstRow- первая строка, затронутая этим событием -
lastRow- последняя строка, затронутая этим событием
TableModelEvent
public TableModelEvent(TableModel source,
int firstRow,
int lastRow,
int column) Данные в столбце column в диапазоне [firstRow, lastRow] были обновлены.
- Параметры:
-
source- таблицаTableModel, затронутая этим событием -
firstRow- первая строка, затронутая этим событием -
lastRow- последняя строка, затронутая этим событием -
column- индекс столбца изменённых ячеек;ALL_COLUMNSозначает, что все ячейки в указанном диапазоне строк изменены.
TableModelEvent
public TableModelEvent(TableModel source,
int firstRow,
int lastRow,
int column,
int type) Ячейки от (firstRow, column) до (lastRow, column) были изменены. column относится к индексу столбца в системе координат модели. Когда column равен ALL_COLUMNS, все ячейки в указанном диапазоне строк считаются изменёнными.
type должен быть одним из: INSERT, UPDATE и DELETE.
- Параметры:
-
source- таблицаTableModel, затронутая этим событием -
firstRow- первая строка, затронутая этим событием -
lastRow- последняя строка, затронутая этим событием -
column- индекс столбца изменённых ячеек;ALL_COLUMNSозначает, что все ячейки в указанном диапазоне строк изменены. -
type- тип изменения, обозначенного этим событием,INSERT,DELETEилиUPDATE
Методы
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данных
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/event/TableModelEvent.html