Класс DefaultTableColumnModel
- java.lang.Object
-
- javax.swing.table.DefaultTableColumnModel
- Все реализованные интерфейсы:
-
PropertyChangeListener,Serializable,EventListener,ListSelectionListener,TableColumnModel
public class DefaultTableColumnModel extends Object implements TableColumnModel, PropertyChangeListener, ListSelectionListener, Serializable
Стандартный обработчик столбцов для JTable.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans™ была добавлена в пакет java.beans. Пожалуйста, обратитесь к XMLEncoder.
- См. также:
-
JTable, Сериализованная форма
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected ChangeEvent | changeEvent | Событие изменения (только одно необходимо) |
protected int | columnMargin | Поля отступа между столбцами |
protected boolean | columnSelectionAllowed | Разрешение выбора столбцов в этой модели столбцов |
protected EventListenerList | listenerList | Список слушателей событий TableColumnModel |
protected ListSelectionModel | selectionModel | Модель для отслеживания выделенных столбцов |
protected Vector<TableColumn> | tableColumns | Массив объектов TableColumn в этой модели |
protected int | totalColumnWidth | Локальный кэш суммарной ширины всех столбцов |
Конструкторы
| Конструктор | Описание |
|---|---|
DefaultTableColumnModel() | Создает модель столбцов таблицы по умолчанию. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | addColumn(TableColumn aColumn) | Добавляет |
void | addColumnModelListener(TableColumnModelListener x) | Добавляет слушателя событий модели столбцов таблицы. |
protected ListSelectionModel | createSelectionModel() | Создает новую модель выбора по умолчанию. |
protected void | fireColumnAdded(TableColumnModelEvent e) | Уведомляет всех слушателей, зарегистрированных для уведомления об этом типе события. |
protected void | fireColumnMarginChanged() | Уведомляет всех слушателей, зарегистрированных для уведомления об этом типе события. |
protected void | fireColumnMoved(TableColumnModelEvent e) | Уведомляет всех слушателей, зарегистрированных для уведомления об этом типе события. |
protected void | fireColumnRemoved(TableColumnModelEvent e) | Уведомляет всех слушателей, зарегистрированных для уведомления об этом типе события. |
protected void | fireColumnSelectionChanged(ListSelectionEvent e) | Уведомляет всех слушателей, зарегистрированных для уведомления об этом типе события. |
TableColumn | getColumn(int columnIndex) | Возвращает объект |
int | getColumnCount() | Возвращает количество столбцов в массиве |
int | getColumnIndex(Object identifier) | Возвращает индекс первого столбца в массиве |
int | getColumnIndexAtX(int x) | Возвращает индекс столбца, находящегося в позиции |
int | getColumnMargin() | Возвращает отступ ширины для |
TableColumnModelListener[] | getColumnModelListeners() | Возвращает массив всех слушателей событий модели столбцов, зарегистрированных в этой модели. |
Enumeration<TableColumn> | getColumns() | Возвращает массив всех столбцов в модели. |
boolean | getColumnSelectionAllowed() | Возвращает true, если разрешен выбор столбцов, иначе false. |
<T extends EventListener> | getListeners(Class<T> listenerType) | Возвращает массив всех объектов, в настоящее время зарегистрированных как слушатели в этой модели. |
int | getSelectedColumnCount() | Возвращает количество выделенных столбцов. |
int[] | getSelectedColumns() | Возвращает массив выделенных столбцов. |
ListSelectionModel | getSelectionModel() | Возвращает модель |
int | getTotalColumnWidth() | Возвращает общую суммарную ширину всех столбцов. |
void | moveColumn(int columnIndex,
int newIndex) | Перемещает столбец и заголовок в позиции |
void | propertyChange(PropertyChangeEvent evt) | Метод изменения слушателя событий изменения свойств. |
protected void | recalcWidthCache() | Пересчитывает общую суммарную ширину всех столбцов. |
void | removeColumn(TableColumn column) | Удаляет |
void | removeColumnModelListener(TableColumnModelListener x) | Удаляет слушателя событий модели столбцов таблицы. |
void | setColumnMargin(int newMargin) | Устанавливает отступ столбца в |
void | setColumnSelectionAllowed(boolean flag) | Устанавливает, разрешен ли выбор столбцов. |
void | setSelectionModel(ListSelectionModel newModel) | Устанавливает модель выбора для этой |
void | valueChanged(ListSelectionEvent e) | Объект, передающий |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Подробное описание полей
tableColumns
protected Vector<TableColumn> tableColumns
Массив объектов TableColumn в этой модели
selectionModel
protected ListSelectionModel selectionModel
Модель для отслеживания выделенных столбцов
columnMargin
protected int columnMargin
Ширина отступа между столбцами
listenerList
protected EventListenerList listenerList
Список слушателей TableColumnModelListener
changeEvent
protected transient ChangeEvent changeEvent
Событие изменения (только одно необходимо)
columnSelectionAllowed
protected boolean columnSelectionAllowed
Разрешен ли выбор столбцов в этой модели столбцов
totalColumnWidth
protected int totalColumnWidth
Локальный кэш суммарной ширины всех столбцов
Подробное описание конструкторов
DefaultTableColumnModel
public DefaultTableColumnModel()
Создает модель столбцов таблицы по умолчанию.
Методы
addColumn
public void addColumn(TableColumn aColumn)
Добавляет aColumn в конец массива tableColumns. Этот метод также публикует событие columnAdded своим слушателям.
- Определено в:
-
addColumnв интерфейсеTableColumnModel - Параметры:
-
aColumn- добавляемаяTableColumn - Исключения:
-
IllegalArgumentException- еслиaColumnявляетсяnull - См. также:
removeColumn(javax.swing.table.TableColumn)
removeColumn
public void removeColumn(TableColumn column)
Удаляет column из массива tableColumns. Этот метод ничего не сделает, если column не находится в списке столбцов таблицы. tile вызывается для изменения размеров заголовка и представления таблицы. Этот метод также публикует событие columnRemoved своим слушателям.
- Определено в:
-
removeColumnв интерфейсеTableColumnModel - Параметры:
-
column- удаляемыйTableColumn - См. также:
addColumn(javax.swing.table.TableColumn)
moveColumn
public void moveColumn(int columnIndex,
int newIndex) Перемещает столбец и заголовок по индексу columnIndex в newIndex. Прежний столбец по индексу columnIndex теперь будет находиться по индексу newIndex. Столбец, который ранее находился по индексу newIndex, сдвигается влево или вправо, чтобы освободить место. Этот метод не будет перемещать столбцы, если columnIndex равно newIndex. Этот метод также публикует событие columnMoved своим слушателям.
- Определено в:
-
moveColumnв интерфейсеTableColumnModel - Параметры:
-
columnIndex- индекс перемещаемого столбца -
newIndex- новый индекс для перемещения столбца - Исключения:
-
IllegalArgumentException- еслиcolumnилиnewIndexнаходятся вне допустимого диапазона
setColumnMargin
public void setColumnMargin(int newMargin)
Устанавливает отступ столбца в newMargin. Этот метод также публикует событие columnMarginChanged своим слушателям.
- Определено в:
-
setColumnMarginв интерфейсеTableColumnModel - Параметры:
-
newMargin- новая ширина отступа в пикселях - См. также:
-
getColumnMargin(),getTotalColumnWidth()
getColumnCount
public int getColumnCount()
Возвращает количество столбцов в массиве tableColumns.
- Определено в:
-
getColumnCountв интерфейсеTableColumnModel - Возвращает:
- количество столбцов в массиве
tableColumns - См. также:
getColumns()
getColumns
public Enumeration<TableColumn> getColumns()
Возвращает массив всех столбцов в модели.
- Определено в:
-
getColumnsв интерфейсеTableColumnModel - Возвращает:
- массив столбцов в модели
getColumnIndex
public int getColumnIndex(Object identifier)
Возвращает индекс первого столбца в массиве tableColumns, идентификатор которого равен identifier, при сравнении с помощью equals.
- Определено в:
-
getColumnIndexв интерфейсеTableColumnModel - Параметры:
-
identifier- объект идентификатора - Возвращает:
- индекс первого столбца в массиве
tableColumns, идентификатор которого равенidentifier - Исключения:
-
IllegalArgumentException- еслиidentifierявляетсяnull, или если ни один столбец не имеет данногоTableColumn - См. также:
getColumn(int)
getColumn
public TableColumn getColumn(int columnIndex)
Возвращает объект TableColumn для столбца с индексом columnIndex.
- Определено в:
-
getColumnв интерфейсеTableColumnModel - Параметры:
-
columnIndex- индекс нужного столбца - Возвращает:
- объект
TableColumnдля столбца с индексомcolumnIndex
getColumnMargin
public int getColumnMargin()
Возвращает отступ ширины для TableColumn. Значение по умолчанию columnMargin равно 1.
- Определено в:
-
getColumnMarginв интерфейсеTableColumnModel - Возвращает:
- максимальную ширину для
TableColumn - См. также:
setColumnMargin(int)
getColumnIndexAtX
public int getColumnIndexAtX(int x)
Возвращает индекс столбца, расположенного в позиции x, или -1, если по этому значению столбца нет. В соответствии с архитектурой Swing's separable model, TableColumnModel не знает, как фактически отображаются столбцы таблицы. Визуальное представление столбцов является обязанностью объекта представления/контроллера, использующего эту модель (обычно JTable). Представление/контроллер не обязательно должен отображать столбцы последовательно слева направо. Например, столбцы могут отображаться справа налево, чтобы удовлетворить предпочтениям локали, или некоторые столбцы могут быть скрыты по запросу пользователя. Поскольку модель не знает, как столбцы выложены на экране, указанное значение xPosition не следует рассматривать как координату в двумерном графическом пространстве. Вместо этого его следует рассматривать как ширину от начала первого столбца в модели. Если требуется индекс столбца для заданной координаты X в двумерном пространстве, можно использовать JTable.columnAtPoint.
- Определено в:
-
getColumnIndexAtXв интерфейсеTableColumnModel - Параметры:
-
x- горизонтальное положение, которое нас интересует - Возвращает:
- индекс столбца или -1, если столбец не найден
- См. также:
JTable.columnAtPoint(java.awt.Point)
getTotalColumnWidth
public int getTotalColumnWidth()
Возвращает общую суммарную ширину всех столбцов.
- Определено в:
-
getTotalColumnWidthв интерфейсеTableColumnModel - Возвращает:
- свойство
totalColumnWidth
setSelectionModel
public void setSelectionModel(ListSelectionModel newModel)
Устанавливает модель выделения для этого TableColumnModel на newModel и регистрирует для получения уведомлений о слушателях от новой модели выделения. Если newModel является null, выбрасывается исключение.
- Определено в:
-
setSelectionModelв интерфейсеTableColumnModel - Параметры:
-
newModel- новая модель выделения - Исключения:
-
IllegalArgumentException- еслиnewModelявляетсяnull - См. также:
getSelectionModel()
getSelectionModel
public ListSelectionModel getSelectionModel()
Возвращает ListSelectionModel для поддержания состояния выделения столбцов.
- Определено в:
-
getSelectionModelв интерфейсеTableColumnModel - Возвращает:
- объект, предоставляющий состояние выделения столбцов. Или
null, если выделение строк запрещено. - См. также:
setSelectionModel(javax.swing.ListSelectionModel)
setColumnSelectionAllowed
public void setColumnSelectionAllowed(boolean flag)
Устанавливает, разрешено ли выделение столбцов. По умолчанию false.
- Определено в:
-
setColumnSelectionAllowedв интерфейсеTableColumnModel - Параметры:
-
flag- true, если выделение столбцов разрешено, иначе false - См. также:
TableColumnModel.getColumnSelectionAllowed()
getColumnSelectionAllowed
public boolean getColumnSelectionAllowed()
Возвращает true, если выделение столбцов разрешено, иначе false. По умолчанию false.
- Определено в:
-
getColumnSelectionAllowedв интерфейсеTableColumnModel - Возвращает:
- свойство
columnSelectionAllowed - См. также:
TableColumnModel.setColumnSelectionAllowed(boolean)
getSelectedColumns
public int[] getSelectedColumns()
Возвращает массив выделенных столбцов. Если selectionModel равно null, возвращает пустой массив.
- Определено в:
-
getSelectedColumnsв интерфейсеTableColumnModel - Возвращает:
- массив выделенных столбцов или пустой массив, если ничего не выделено или
selectionModelравноnull
getSelectedColumnCount
public int getSelectedColumnCount()
Возвращает количество выделенных столбцов.
- Определено в:
-
getSelectedColumnCountв интерфейсеTableColumnModel - Возвращает:
- количество выделенных столбцов
addColumnModelListener
public void addColumnModelListener(TableColumnModelListener x)
Добавляет слушателя событий модели столбцов таблицы.
- Определено в:
-
addColumnModelListenerв интерфейсеTableColumnModel - Параметры:
-
x- объектTableColumnModelListener
removeColumnModelListener
public void removeColumnModelListener(TableColumnModelListener x)
Удаляет слушателя событий модели столбцов таблицы.
- Определено в:
-
removeColumnModelListenerв интерфейсеTableColumnModel - Параметры:
-
x- объектTableColumnModelListener
getColumnModelListeners
public TableColumnModelListener[] getColumnModelListeners()
Возвращает массив всех зарегистрированных слушателей событий модели столбцов для этой модели.
- Возвращает:
- все модели столбцов по умолчанию
ColumnModelListenerили пустой массив, если в данный момент не зарегистрировано ни одного слушателя модели столбцов - С:
- 1.4
- См. также:
-
addColumnModelListener(javax.swing.event.TableColumnModelListener),removeColumnModelListener(javax.swing.event.TableColumnModelListener)
fireColumnAdded
protected void fireColumnAdded(TableColumnModelEvent e)
Уведомляет всех слушателей, которые проявили интерес к уведомлениям об этом типе события. Экземпляр события создается ленивым образом, используя параметры, переданные в метод fire.
- Параметры:
-
e- полученное событие - См. также:
EventListenerList
fireColumnRemoved
protected void fireColumnRemoved(TableColumnModelEvent e)
Уведомляет всех слушателей, которые проявили интерес к уведомлениям об этом типе события. Экземпляр события создается ленивым образом, используя параметры, переданные в метод fire.
- Параметры:
-
e- полученное событие - См. также:
EventListenerList
fireColumnMoved
protected void fireColumnMoved(TableColumnModelEvent e)
Уведомляет всех слушателей, которые проявили интерес к уведомлениям об этом типе события. Экземпляр события создается ленивым образом, используя параметры, переданные в метод fire.
- Параметры:
-
e- полученное событие - См. также:
EventListenerList
fireColumnSelectionChanged
protected void fireColumnSelectionChanged(ListSelectionEvent e)
Уведомляет всех слушателей, которые проявили интерес к уведомлениям об этом типе события. Экземпляр события создается ленивым образом, используя параметры, переданные в метод fire.
- Параметры:
-
e- полученное событие - См. также:
EventListenerList
fireColumnMarginChanged
protected void fireColumnMarginChanged()
Уведомляет всех слушателей, которые проявили интерес к уведомлениям об этом типе события. Экземпляр события создается ленивым образом, используя параметры, переданные в метод fire.
- См. также:
EventListenerList
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Возвращает массив всех объектов, в данный момент зарегистрированных в качестве FooListener в этой модели. FooListener регистрируются с помощью метода addFooListener.
Вы можете указать аргумент listenerType с использованием литерала класса, например FooListener.class. Например, вы можете запросить слушателей модели столбцов у DefaultTableColumnModel m следующим кодом:
ColumnModelListener[] cmls = (ColumnModelListener[])(m.getListeners(ColumnModelListener.class));Если такие слушатели не существуют, этот метод возвращает пустой массив.
- Параметры типа:
-
T- тип слушателя - Параметры:
-
listenerType- тип запрашиваемых слушателей - Возвращает:
- массив всех объектов, зарегистрированных в качестве
FooListenerв этой модели, или пустой массив, если такие слушатели не были добавлены - Исключения:
-
ClassCastException- еслиlistenerTypeне указывает класс или интерфейс, реализующийjava.util.EventListener - С:
- 1.3
- См. также:
getColumnModelListeners()
propertyChange
public void propertyChange(PropertyChangeEvent evt)
Метод изменения слушателя изменений свойств. Используется для отслеживания изменений ширины столбца или предпочтительной ширины столбца.
- Задано в:
-
propertyChangeв интерфейсеPropertyChangeListener - Параметры:
-
evt-PropertyChangeEvent
valueChanged
public void valueChanged(ListSelectionEvent e)
Обработчик ListSelectionListener, который передает ListSelectionEvents при изменении выбора столбца.
- Задано в:
-
valueChangedв интерфейсеListSelectionListener - Параметры:
-
e- событие изменения
createSelectionModel
protected ListSelectionModel createSelectionModel()
Создает новую модель выбора списка по умолчанию.
- Возвращает:
- новосозданную модель выбора списка по умолчанию.
recalcWidthCache
protected void recalcWidthCache()
Пересчитывает общую комбинированную ширину всех столбцов. Обновляет свойство totalColumnWidth.
© 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/table/DefaultTableColumnModel.html