Класс 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.
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
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 |
Добавляет aColumn в конец массива tableColumns. |
void |
addColumnModelListener |
Добавляет слушателя событий модели столбцов таблицы. |
protected ListSelectionModel |
createSelectionModel() |
Создает новую стандартную модель выбора списка. |
protected void |
fireColumnAdded |
Уведомляет всех слушателей, которые проявили интерес к уведомлению об этом типе события. |
protected void |
fireColumnMarginChanged() |
Уведомляет всех слушателей, которые проявили интерес к уведомлению об этом типе события. |
protected void |
fireColumnMoved |
Уведомляет всех слушателей, которые проявили интерес к уведомлению об этом типе события. |
protected void |
fireColumnRemoved |
Уведомляет всех слушателей, которые проявили интерес к уведомлению об этом типе события. |
protected void |
fireColumnSelectionChanged |
Уведомляет всех слушателей, которые проявили интерес к уведомлению об этом типе события. |
TableColumn |
getColumn |
Возвращает объект TableColumn для столбца по индексу columnIndex. |
int |
getColumnCount() |
Возвращает количество столбцов в массиве tableColumns. |
int |
getColumnIndex |
Возвращает индекс первого столбца в массиве tableColumns, идентификатор которого равен identifier, при сравнении с помощью equals. |
int |
getColumnIndexAtX |
Возвращает индекс столбца, расположенного в позиции x, или -1, если такой столбец отсутствует. |
int |
getColumnMargin() |
Возвращает отступ ширины для TableColumn. |
TableColumnModelListener[] |
getColumnModelListeners() |
Возвращает массив всех слушателей модели столбцов, зарегистрированных в этой модели. |
Enumeration<TableColumn> |
getColumns() |
Возвращает Enumeration всех столбцов в модели. |
boolean |
getColumnSelectionAllowed() |
Возвращает true, если разрешен выбор столбцов, иначе false. |
<T extends EventListener> |
getListeners |
Возвращает массив всех объектов, в настоящее время зарегистрированных как FooListener в этой модели. |
int |
getSelectedColumnCount() |
Возвращает количество выбранных столбцов. |
int[] |
getSelectedColumns() |
Возвращает массив выбранных столбцов. |
ListSelectionModel |
getSelectionModel() |
Возвращает ListSelectionModel для поддержки состояния выбора столбцов. |
int |
getTotalColumnWidth() |
Возвращает суммарную ширину всех столбцов. |
void |
moveColumn |
Перемещает столбец и заголовок в позиции columnIndex в позицию newIndex. |
void |
propertyChange |
Метод для слушателя изменения свойства. |
protected void |
recalcWidthCache() |
Пересчитывает суммарную ширину всех столбцов. |
void |
removeColumn |
Удаляет column из массива tableColumns. |
void |
removeColumnModelListener |
Удаляет слушателя событий модели столбцов таблицы. |
void |
setColumnMargin |
Устанавливает отступ ширины столбцов в newMargin. |
void |
setColumnSelectionAllowed |
Устанавливает возможность выбора столбцов. |
void |
setSelectionModel |
Устанавливает модель выбора для этой TableColumnModel на newModel, и регистрируется для уведомлений от новой модели выбора. |
void |
valueChanged |
Слушатель, который пересылает ListSelectionEvents, когда происходит изменение выбора столбцов. |
Подробное описание полей
tableColumns
protected Vector<TableColumn> tableColumns
selectionModel
protected ListSelectionModel selectionModel
columnMargin
protected int columnMargin
listenerList
protected EventListenerList listenerList
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 своим слушателям.- Specified by:
-
addColumnв интерфейсеTableColumnModel - Parameters:
-
aColumn- добавляемыйTableColumn - Throws:
-
IllegalArgumentException- еслиaColumnявляетсяnull - See Also:
removeColumn
public void removeColumn(TableColumn column)
column из массива tableColumns. Этот метод ничего не сделает, если column не содержится в списке столбцов таблицы. tile вызывается для изменения размера как заголовка, так и представления таблицы. Этот метод также публикует событие columnRemoved своим слушателям.- Specified by:
-
removeColumnв интерфейсеTableColumnModel - Parameters:
-
column- удаляемыйTableColumn - See Also:
moveColumn
public void moveColumn(int columnIndex, int newIndex)
columnIndex в позицию newIndex. Прежний столбец в позиции columnIndex теперь будет находиться в позиции newIndex. Столбец, который раньше был в позиции newIndex, смещается влево или вправо, чтобы освободить место. Этот метод не будет перемещать столбцы, если columnIndex равно newIndex. Этот метод также публикует событие columnMoved своим слушателям.- Specified by:
-
moveColumnв интерфейсеTableColumnModel - Parameters:
-
columnIndex- индекс перемещаемого столбца -
newIndex- новый индекс для перемещения столбца - Throws:
-
IllegalArgumentException- еслиcolumnилиnewIndexне находятся в допустимом диапазоне
setColumnMargin
public void setColumnMargin(int newMargin)
newMargin. Этот метод также публикует событие columnMarginChanged своим слушателям.- Specified by:
-
setColumnMarginв интерфейсеTableColumnModel - Parameters:
-
newMargin- новая ширина отступа в пикселях - See Also:
getColumnCount
public int getColumnCount()
tableColumns.- Specified by:
-
getColumnCountв интерфейсеTableColumnModel - Returns:
- количество столбцов в массиве
tableColumns - See Also:
getColumns
public Enumeration<TableColumn> getColumns()
- Specified by:
-
getColumnsв интерфейсеTableColumnModel - Returns:
- массив столбцов в модели
getColumnIndex
public int getColumnIndex(Object identifier)
tableColumns, идентификатор которого равен identifier, при сравнении с помощью equals.- Specified by:
-
getColumnIndexв интерфейсеTableColumnModel - Parameters:
-
identifier- объект идентификатора - Returns:
- индекс первого столбца в массиве
tableColumns, идентификатор которого равенidentifier - Throws:
-
IllegalArgumentException- еслиidentifierявляетсяnull, или если ни один столбец не имеет этогоTableColumn - See Also:
getColumn
public TableColumn getColumn(int columnIndex)
TableColumn для столбца в позиции columnIndex.- Specified by:
-
getColumnв интерфейсеTableColumnModel - Parameters:
-
columnIndex- индекс желаемого столбца - Returns:
- объект
TableColumnдля столбца в позицииcolumnIndex
getColumnMargin
public int getColumnMargin()
TableColumn. Значение по умолчанию для отступа равно 1.- Specified by:
-
getColumnMarginв интерфейсеTableColumnModel - Returns:
- максимальную ширину для
TableColumn - See Also:
getColumnIndexAtX
public int getColumnIndexAtX(int x)
x, или -1, если ни один столбец не покрывает эту точку. В соответствии с архитектурой раздельной модели Swing, TableColumnModel не знает, как столбцы таблицы фактически отображаются на экране. Визуальное представление столбцов является обязанностью объекта представления/контроллера, использующего эту модель (обычно JTable). Представление/контроллер не обязательно должен отображать столбцы последовательно слева направо. Например, столбцы могут отображаться справа налево для соответствия предпочтениям языка или некоторые столбцы могут быть скрыты по требованию пользователя. Поскольку модель не знает, как столбцы расположены на экране, заданная xPosition не должна рассматриваться как координата в двумерном графическом пространстве. Вместо этого она должна рассматриваться как ширина от начала первого столбца в модели. Если требуется индекс столбца для заданной координаты X в двумерном пространстве, вместо этого можно использовать JTable.columnAtPoint. - Specified by:
-
getColumnIndexAtXв интерфейсеTableColumnModel - Parameters:
-
x- горизонтальное положение, представляющее интерес - Returns:
- индекс столбца или -1, если столбец не найден
- See Also:
getTotalColumnWidth
public int getTotalColumnWidth()
- Specified by:
-
getTotalColumnWidthв интерфейсеTableColumnModel - Returns:
- свойство
totalColumnWidth
setSelectionModel
public void setSelectionModel(ListSelectionModel newModel)
TableColumnModel на newModel и регистрируется для получения уведомлений о слушателях от новой модели выделения. Если newModel является null, выбрасывается исключение.- Specified by:
-
setSelectionModelв интерфейсеTableColumnModel - Parameters:
-
newModel- новая модель выделения - Throws:
-
IllegalArgumentException- еслиnewModelявляетсяnull - See Also:
getSelectionModel
public ListSelectionModel getSelectionModel()
ListSelectionModel, используемую для поддержания состояния выделения столбцов.- Specified by:
-
getSelectionModelв интерфейсеTableColumnModel - Returns:
- объект, предоставляющий состояние выделения столбцов. Или
nullесли выделение строк запрещено. - See Also:
setColumnSelectionAllowed
public void setColumnSelectionAllowed(boolean flag)
- Specified by:
-
setColumnSelectionAllowedin interfaceTableColumnModel - Parameters:
-
flag- true, если выделение столбцов разрешено, false — в противном случае - See Also:
getColumnSelectionAllowed
public boolean getColumnSelectionAllowed()
- Specified by:
-
getColumnSelectionAllowedin interfaceTableColumnModel - Returns:
- свойство
columnSelectionAllowed - See Also:
getSelectedColumns
public int[] getSelectedColumns()
selectionModel — null, возвращает пустой массив.- Specified by:
-
getSelectedColumnsin interfaceTableColumnModel - Returns:
- массив выделенных столбцов или пустой массив, если ничего не выделено или
selectionModel—null
getSelectedColumnCount
public int getSelectedColumnCount()
- Specified by:
-
getSelectedColumnCountin interfaceTableColumnModel - Returns:
- количество выделенных столбцов
addColumnModelListener
public void addColumnModelListener(TableColumnModelListener x)
- Specified by:
-
addColumnModelListenerin interfaceTableColumnModel - Parameters:
-
x- объектTableColumnModelListener
removeColumnModelListener
public void removeColumnModelListener(TableColumnModelListener x)
- Specified by:
-
removeColumnModelListenerin interfaceTableColumnModel - Parameters:
-
x- объектTableColumnModelListener
getColumnModelListeners
public TableColumnModelListener[] getColumnModelListeners()
- Returns:
- все слушатели событий столбцов данной модели таблицы по умолчанию или пустой массив, если слушатели не зарегистрированы
- Since:
- 1.4
- See Also:
fireColumnAdded
protected void fireColumnAdded(TableColumnModelEvent e)
- Parameters:
-
e- событие - See Also:
fireColumnRemoved
protected void fireColumnRemoved(TableColumnModelEvent e)
- Parameters:
-
e- событие - See Also:
fireColumnMoved
protected void fireColumnMoved(TableColumnModelEvent e)
- Parameters:
-
e- событие - See Also:
fireColumnSelectionChanged
protected void fireColumnSelectionChanged(ListSelectionEvent e)
- Parameters:
-
e- событие - See Also:
fireColumnMarginChanged
protected void fireColumnMarginChanged()
- See Also:
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
addFooListener. Вы можете указать аргумент listenerType с помощью литерала класса, например, FooListener.class. Например, вы можете запросить слушателей событий модели столбцов для DefaultTableColumnModel m следующим кодом:
ColumnModelListener[] cmls = (ColumnModelListener[])(m.getListeners(ColumnModelListener.class));Если таких слушателей нет, метод возвращает пустой массив.
- Type Parameters:
-
T- тип слушателя - Parameters:
-
listenerType- тип запрашиваемых слушателей - Returns:
- массив всех объектов, зарегистрированных в качестве слушателей на этой модели, или пустой массив, если такие слушатели не были добавлены
- Throws:
-
ClassCastException- еслиlistenerTypeне указывает класс или интерфейс, реализующийjava.util.EventListener - Since:
- 1.3
- See Also:
propertyChange
public void propertyChange(PropertyChangeEvent evt)
- Specified by:
-
propertyChangein interfacePropertyChangeListener - Parameters:
-
evt- событие изменения свойстваPropertyChangeEvent
valueChanged
public void valueChanged(ListSelectionEvent e)
- Specified by:
-
valueChangedin interfaceListSelectionListener - Parameters:
-
e- событие изменения
createSelectionModel
protected ListSelectionModel createSelectionModel()
- Returns:
- новая созданная модель выбора по умолчанию.
recalcWidthCache
protected void recalcWidthCache()
totalColumnWidth.
© 1993, 2021, 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/17/docs/api/java.desktop/javax/swing/table/DefaultTableColumnModel.html