Класс DefaultTableModel
- Все реализуемые интерфейсы:
Serializable, TableModel
public class DefaultTableModel extends AbstractTableModel implements Serializable
TableModel, использующая Vector из Vectors для хранения объектов значений ячеек. Предупреждение: DefaultTableModel возвращает класс столбца Object. При использовании DefaultTableModel с TableRowSorter это приведет к широкому использованию toString, что для типов данных, не являющихся String, требует значительных затрат. При использовании DefaultTableModel с TableRowSorter настоятельно рекомендуется переопределить getColumnClass, чтобы он возвращал соответствующий тип.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, работающими с одной и той же версией Swing. Начиная с версии 1.4 в пакет java.beans добавлена поддержка долгосрочного хранения всех JavaBeans. См. XMLEncoder.
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Vector |
columnIdentifiers |
Vector идентификаторов столбцов. |
protected Vector |
dataVector |
Vector Vectors Object значений. |
Поля, объявленные в классе AbstractTableModel
listenerList | Модификатор и тип | Поле | Описание |
|---|---|---|
protected EventListenerList |
listenerList |
Список слушателей |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DefaultTableModel() |
Создает модель DefaultTableModel по умолчанию — таблицу с нулевым количеством столбцов и строк. |
DefaultTableModel |
Создает DefaultTableModel с rowCount и columnCount значений объектов null. |
DefaultTableModel |
Создает DefaultTableModel и инициализирует таблицу, передавая data и columnNames методу setDataVector. |
DefaultTableModel |
Создает DefaultTableModel с количеством столбцов, равным числу элементов в columnNames, и rowCount значений объектов null. |
DefaultTableModel |
Создает DefaultTableModel с количеством столбцов, равным числу элементов в columnNames, и rowCount значений объектов null. |
DefaultTableModel |
Создает DefaultTableModel и инициализирует таблицу, передавая data и columnNames методу setDataVector. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addColumn |
Добавляет столбец в модель. |
void |
addColumn |
Добавляет столбец в модель. |
void |
addColumn |
Добавляет столбец в модель. |
void |
addRow |
Добавляет строку в конец модели. |
void |
addRow |
Добавляет строку в конец модели. |
protected static Vector |
convertToVector |
Возвращает вектор, содержащий те же объекты, что и массив. |
protected static Vector |
convertToVector |
Возвращает вектор векторов, содержащий те же объекты, что и массив. |
int |
getColumnCount() |
Возвращает количество столбцов в этой таблице данных. |
String |
getColumnName |
Возвращает имя столбца. |
Vector |
getDataVector() |
Возвращает Vector Vectors, содержащий значения данных таблицы. |
int |
getRowCount() |
Возвращает количество строк в этой таблице данных. |
Object |
getValueAt |
Возвращает значение атрибута ячейки в позиции row и column. |
void |
insertRow |
Вставляет строку в позицию row модели. |
void |
insertRow |
Вставляет строку в позицию row модели. |
boolean |
isCellEditable |
Возвращает true независимо от значений параметров. |
void |
moveRow |
Перемещает одну или несколько строк из включительного диапазона от start до end в позицию to модели. |
void |
newDataAvailable |
Эквивалентен fireTableChanged. |
void |
newRowsAdded |
Обеспечивает правильное количество столбцов в новых строках. |
void |
removeRow |
Удаляет из модели строку в позиции row. |
void |
rowsRemoved |
Эквивалентен fireTableChanged. |
void |
setColumnCount |
Устанавливает количество столбцов в модели. |
void |
setColumnIdentifiers |
Заменяет идентификаторы столбцов в модели. |
void |
setColumnIdentifiers |
Заменяет идентификаторы столбцов в модели. |
void |
setDataVector |
Заменяет значение в переменной экземпляра dataVector значениями массива dataVector. |
void |
setDataVector |
Заменяет текущую переменную экземпляра dataVector новым Vector строк, dataVector. |
void |
setNumRows |
Устарел начиная с платформы Java 2 версии 1.3. |
void |
setRowCount |
Устанавливает количество строк в модели. |
void |
setValueAt |
Устанавливает значение объекта для ячейки в позиции column и row. |
Методы, объявленные в классе AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, removeTableModelListener | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addTableModelListener |
Добавляет слушателя в список, который получает уведомления при каждом изменении модели данных. |
int |
findColumn |
Возвращает столбец по его имени. |
void |
fireTableCellUpdated |
Уведомляет всех слушателей об обновлении значения ячейки в позиции [row, column]. |
void |
fireTableChanged |
Передает указанное событие уведомления всем TableModelListeners, зарегистрировавшимся в качестве слушателей этой модели таблицы. |
void |
fireTableDataChanged() |
Уведомляет всех слушателей о том, что значения всех ячеек в строках таблицы могли измениться. |
void |
fireTableRowsDeleted |
Уведомляет всех слушателей об удалении строк включительно в диапазоне [firstRow, lastRow]. |
void |
fireTableRowsInserted |
Уведомляет всех слушателей о вставке строк включительно в диапазоне [firstRow, lastRow]. |
void |
fireTableRowsUpdated |
Уведомляет всех слушателей об обновлении строк включительно в диапазоне [firstRow, lastRow]. |
void |
fireTableStructureChanged() |
Уведомляет всех слушателей об изменении структуры таблицы. |
Class |
getColumnClass |
Возвращает Object.class независимо от columnIndex. |
<T extends EventListener> |
getListeners |
Возвращает массив всех объектов, зарегистрированных в данный момент как FooListeners для этого AbstractTableModel. |
TableModelListener[] |
getTableModelListeners() |
Возвращает массив всех слушателей модели таблицы, зарегистрированных в этой модели. |
void |
removeTableModelListener |
Удаляет слушателя из списка, который получает уведомления при каждом изменении модели данных. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Показывает, равен ли другой объект этому объекту. |
protected void |
finalize() |
Устарело и подлежит удалению: этот элемент API может быть удален в будущей версии. Финализация устарела и подлежит удалению в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова уведомления или прерывания. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова уведомления или прерывания, либо до истечения заданного интервала реального времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова уведомления или прерывания, либо до истечения заданного интервала реального времени. |
Подробное описание полей
dataVector
protected Vector<Vector> dataVector
Vector Vectors Object значений.columnIdentifiers
protected Vector columnIdentifiers
Vector идентификаторов столбцов.Подробное описание конструкторов
DefaultTableModel
public DefaultTableModel()
DefaultTableModel, содержащую ноль столбцов и ноль строк.DefaultTableModel
public DefaultTableModel(int rowCount, int columnCount)
DefaultTableModel с rowCount и columnCount из null значений типа object.- Параметры:
-
rowCount— количество строк таблицы -
columnCount— количество столбцов таблицы - См. также:
DefaultTableModel
public DefaultTableModel(Vector<?> columnNames, int rowCount)
DefaultTableModel с количеством столбцов, равным количеству элементов в columnNames, и rowCount из null значений типа object. Имя каждого столбца берётся из вектора columnNames.- Параметры:
-
columnNames—vectorс именами новых столбцов; если этоnull, модель не содержит столбцов -
rowCount— количество строк таблицы - См. также:
DefaultTableModel
public DefaultTableModel(Object[] columnNames, int rowCount)
DefaultTableModel с количеством столбцов, равным количеству элементов в columnNames, и rowCount из null значений типа object. Имя каждого столбца берётся из массива columnNames.- Параметры:
-
columnNames—arrayс именами новых столбцов; если этоnull, модель не содержит столбцов -
rowCount— количество строк таблицы - См. также:
DefaultTableModel
public DefaultTableModel(Vector<? extends Vector> data, Vector<?> columnNames)
DefaultTableModel и инициализирует таблицу, передавая data и columnNames методу setDataVector.- Параметры:
-
data— данные таблицы,VectorизVectorов значений типаObject -
columnNames—vectorс именами новых столбцов - См. также:
DefaultTableModel
public DefaultTableModel(Object[][] data, Object[] columnNames)
DefaultTableModel и инициализирует таблицу, передавая data и columnNames методу setDataVector. Первый индекс в массиве Object[][] — это индекс строки, а второй — индекс столбца.- Параметры:
-
data— данные таблицы -
columnNames— имена столбцов - См. также:
Подробное описание методов
getDataVector
public Vector<Vector> getDataVector()
Vector Vectors, содержащий значения данных таблицы. Каждый вектор во внешнем векторе представляет одну строку значений. Другими словами, чтобы получить значение ячейки в строке 1, столбце 5: ((Vector)getDataVector().elementAt(1)).elementAt(5);
- Возвращает:
- вектор векторов, содержащий значения данных таблицы
- См. также:
setDataVector
public void setDataVector(Vector<? extends Vector> dataVector, Vector<?> columnIdentifiers)
dataVector новым Vector строк, dataVector. Каждая строка представлена в dataVector как Vector значений Object. columnIdentifiers — имена новых столбцов. Первое имя в columnIdentifiers сопоставляется столбцу 0 в dataVector. Каждая строка в dataVector приводится в соответствие с количеством столбцов в columnIdentifiers: если Vector слишком длинный, он усекается, а если слишком короткий, добавляются значения null. Обратите внимание: передача значения null для dataVector приводит к неопределённому поведению и, возможно, к исключению.
- Параметры:
-
dataVector— новый вектор данных -
columnIdentifiers— имена столбцов - См. также:
setDataVector
public void setDataVector(Object[][] dataVector, Object[] columnIdentifiers)
dataVector значениями массива dataVector. Первый индекс в массиве Object[][] — это индекс строки, а второй — индекс столбца. columnIdentifiers — имена новых столбцов.- Параметры:
-
dataVector— новый вектор данных -
columnIdentifiers— имена столбцов - См. также:
newDataAvailable
public void newDataAvailable(TableModelEvent event)
fireTableChanged.- Параметры:
-
event— событие изменения
newRowsAdded
public void newRowsAdded(TableModelEvent e)
setSize в Vector, который усекает слишком длинные векторы и добавляет nullы, если векторы слишком короткие. Этот метод также отправляет всем слушателям уведомление tableChanged.- Параметры:
-
e— этотTableModelEventописывает, где были добавлены строки. Еслиnull, предполагается, что добавлены все строки - См. также:
rowsRemoved
public void rowsRemoved(TableModelEvent event)
fireTableChanged.- Параметры:
-
event— событие изменения
setNumRows
public void setNumRows(int rowCount)
setRowCount.- Параметры:
-
rowCount— новое количество строк
setRowCount
public void setRowCount(int rowCount)
rowCount и выше удаляются.- Параметры:
-
rowCount— количество строк в модели - Начиная с:
- 1.3
- См. также:
addRow
public void addRow(Vector<?> rowData)
null, если не указано rowData. Будет создано уведомление о добавлении строки.- Параметры:
-
rowData— необязательные данные добавляемой строки
addRow
public void addRow(Object[] rowData)
null, если не указано rowData. Будет создано уведомление о добавлении строки.- Параметры:
-
rowData— необязательные данные добавляемой строки
insertRow
public void insertRow(int row, Vector<?> rowData)
row модели. Новая строка будет содержать значения null, если не указано rowData. Будет создано уведомление о добавлении строки.- Параметры:
-
row— индекс вставляемой строки -
rowData— необязательные данные добавляемой строки - Исключения:
-
ArrayIndexOutOfBoundsException— если индекс строки недопустим
insertRow
public void insertRow(int row, Object[] rowData)
row модели. Новая строка будет содержать значения null, если не указано rowData. Будет создано уведомление о добавлении строки.- Параметры:
-
row— индекс вставляемой строки -
rowData— необязательные данные добавляемой строки - Исключения:
-
ArrayIndexOutOfBoundsException— если индекс строки недопустим
moveRow
public void moveRow(int start, int end, int to)
start до end в позицию to модели. После перемещения строка, находившаяся по индексу start, будет находиться по индексу to. Этот метод отправляет всем слушателям уведомление tableChanged.
Examples of moves:
1. moveRow(1,3,5);
a|B|C|D|e|f|g|h|i|j|k - before
a|e|f|g|h|B|C|D|i|j|k - after
2. moveRow(6,7,1);
a|b|c|d|e|f|G|H|i|j|k - before
a|G|H|b|c|d|e|f|i|j|k - after
- Параметры:
-
start— индекс первой перемещаемой строки -
end— индекс последней перемещаемой строки -
to— позиция, в которую перемещаются строки - Исключения:
-
ArrayIndexOutOfBoundsException— если какой-либо из элементов будет перемещён за пределы таблицы
removeRow
public void removeRow(int row)
row. Всем слушателям отправляется уведомление об удалении строки.- Параметры:
-
row— индекс удаляемой строки - Исключения:
-
ArrayIndexOutOfBoundsException— если индекс строки недопустим
setColumnIdentifiers
public void setColumnIdentifiers(Vector<?> columnIdentifiers)
newIdentifier больше текущего количества столбцов, в конец каждой строки модели добавляются новые столбцы. Если количество newIdentifier меньше текущего количества столбцов, все дополнительные столбцы в конце строки удаляются.- Параметры:
-
columnIdentifiers— вектор идентификаторов столбцов. Еслиnull, модель устанавливается без столбцов - См. также:
setColumnIdentifiers
public void setColumnIdentifiers(Object[] newIdentifiers)
newIdentifier больше текущего количества столбцов, в конец каждой строки модели добавляются новые столбцы. Если количество newIdentifier меньше текущего количества столбцов, все дополнительные столбцы в конце строки удаляются.- Параметры:
-
newIdentifiers— массив идентификаторов столбцов. Еслиnull, модель устанавливается без столбцов - См. также:
setColumnCount
public void setColumnCount(int columnCount)
null. Если новый размер меньше текущего, все столбцы с индексом columnCount и выше удаляются.- Параметры:
-
columnCount— новое количество столбцов в модели - Начиная с:
- 1.3
- См. также:
addColumn
public void addColumn(Object columnName)
columnName, который может быть null. Этот метод отправляет всем слушателям уведомление tableChanged. Метод служит оболочкой для addColumn(Object, Vector), использующего null в качестве вектора данных.- Параметры:
-
columnName— идентификатор добавляемого столбца
addColumn
public void addColumn(Object columnName, Vector<?> columnData)
columnName, который может быть null. columnData — необязательный вектор данных столбца. Если это null, столбец заполняется значениями null. В противном случае новые данные добавляются в модель: первый элемент помещается в строку 0 и так далее. Этот метод отправляет всем слушателям уведомление tableChanged.- Параметры:
-
columnName— идентификатор добавляемого столбца -
columnData— необязательные данные добавляемого столбца
addColumn
public void addColumn(Object columnName, Object[] columnData)
columnName. columnData — необязательный массив данных столбца. Если это null, столбец заполняется значениями null. В противном случае новые данные добавляются в модель: первый элемент помещается в строку 0 и так далее. Этот метод отправляет всем слушателям уведомление tableChanged.- Параметры:
-
columnName— идентификатор нового столбца -
columnData— новые данные для добавления в столбец - См. также:
getRowCount
public int getRowCount()
- Определён в:
-
getRowCountв интерфейсеTableModel - Возвращает:
- количество строк в модели
- См. также:
getColumnCount
public int getColumnCount()
- Определён в:
-
getColumnCountв интерфейсеTableModel - Возвращает:
- количество столбцов в модели
- См. также:
getColumnName
public String getColumnName(int column)
- Определён в:
-
getColumnNameв интерфейсеTableModel - Переопределяет:
-
getColumnNameв классеAbstractTableModel - Параметры:
-
column— запрашиваемый столбец - Возвращает:
- имя этого столбца, полученное из строкового представления соответствующего элемента в
columnIdentifiers. ЕслиcolumnIdentifiersне содержит элемента с этим индексом, возвращается имя по умолчанию, предоставленное суперклассом.
isCellEditable
public boolean isCellEditable(int row, int column)
- Определён в:
-
isCellEditableв интерфейсеTableModel - Переопределяет:
-
isCellEditableв классеAbstractTableModel - Параметры:
-
row— строка, значение которой запрашивается -
column— столбец, значение которого запрашивается - Возвращает:
- true
- См. также:
getValueAt
public Object getValueAt(int row, int column)
row и столбце column.- Определён в:
-
getValueAtв интерфейсеTableModel - Параметры:
-
row— строка, значение которой запрашивается -
column— столбец, значение которого запрашивается - Возвращает:
- объект-значение указанной ячейки
- Исключения:
-
ArrayIndexOutOfBoundsException— если указана недопустимая строка или столбец
setValueAt
public void setValueAt(Object aValue, int row, int column)
column и столбце row. aValue — новое значение. Этот метод создаёт уведомление tableChanged.- Определён в:
-
setValueAtв интерфейсеTableModel - Переопределяет:
-
setValueAtв классеAbstractTableModel - Параметры:
-
aValue— новое значение; может быть null -
row— строка, значение которой нужно изменить -
column— столбец, значение которого нужно изменить - Исключения:
-
ArrayIndexOutOfBoundsException— если указана недопустимая строка или столбец - См. также:
convertToVector
protected static Vector<Object> convertToVector(Object[] anArray)
- Параметры:
-
anArray— преобразуемый массив - Возвращает:
- новый вектор; если
anArrayравенnull, возвращаетnull
convertToVector
protected static Vector<Vector<Object>> convertToVector(Object[][] anArray)
- Параметры:
-
anArray— преобразуемый двумерный массив - Возвращает:
- новый вектор векторов; если
anArrayравенnull, возвращаетnull
© 1993, 2025, 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.