Spec-Zone.ru › OpenJDK 17

Класс TableColumn

java.lang.Object
javax.swing.table.TableColumn
Все реализуемые интерфейсы:
Serializable
public class TableColumn extends Object implements Serializable
A TableColumn представляет все атрибуты столбца в JTable, такие как ширина, возможность изменения размера, минимальная и максимальная ширина. Кроме того, TableColumn предоставляет слоты для рендерера и редактора, которые могут использоваться для отображения и редактирования значений в этом столбце.

Также можно указать рендереры и редакторы на основе типа, а не на основе столбца — см. метод setDefaultRenderer в классе JTable. Этот механизм по умолчанию используется только тогда, когда рендерер (или редактор) в TableColumn является null.

TableColumn хранит связь между столбцами в JTable и столбцами в TableModel. modelIndex — это столбец в TableModel, который будет запрашиваться для значений данных для ячеек в этом столбце. По мере перемещения столбца в представлении этот modelIndex не меняется.

Примечание: Некоторые реализации могут предполагать, что все TableColumnModel уникальны, поэтому мы рекомендуем, чтобы один и тот же экземпляр TableColumn не добавлялся более одного раза в TableColumnModel. Чтобы отобразить TableColumn со столбцом данных из модели, создайте новый экземпляр с тем же modelIndex.

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans была добавлена в пакет java.beans. Пожалуйста, см. XMLEncoder.

См. также:
  • TableColumnModel
  • DefaultTableColumnModel
  • JTableHeader.getDefaultRenderer()
  • JTable.getDefaultRenderer(Class)
  • JTable.getDefaultEditor(Class)
  • JTable.getCellRenderer(int, int)
  • JTable.getCellEditor(int, int)

Краткое описание полей

Modifier and Type Field Description
static final String CELL_RENDERER_PROPERTY
Устарело с платформой Java 2 v1.3.
protected TableCellEditor cellEditor
Редактор, используемый для редактирования ячеек данных столбца.
protected TableCellRenderer cellRenderer
Рендерер, используемый для отрисовки ячеек данных столбца.
static final String COLUMN_WIDTH_PROPERTY
Устарело с платформой Java 2 v1.3.
static final String HEADER_RENDERER_PROPERTY
Устарело с платформой Java 2 v1.3.
static final String HEADER_VALUE_PROPERTY
Устарело с платформой Java 2 v1.3.
protected TableCellRenderer headerRenderer
Рендерер, используемый для отрисовки заголовка столбца.
protected Object headerValue
Значение заголовка столбца.
protected Object identifier
Этот объект не используется внутренними механизмами отрисовки JTable; идентификаторы могут быть установлены в TableColumn в качестве необязательного способа маркировки и поиска столбцов таблицы.
protected boolean isResizable
Если true, пользователь может изменять размер столбца; по умолчанию true.
protected int maxWidth
Максимальная ширина столбца.
protected int minWidth
Минимальная ширина столбца.
protected int modelIndex
Индекс столбца в модели, который отображается этим TableColumn.
protected int resizedPostingDisableCount
Устаревшая функция.
с платформой Java 2 v1.3
protected int width
Ширина столбца.

Краткое описание конструкторов

Конструктор Описание
TableColumn()
Метод-обертка, использующий индекс модели по умолчанию 0, ширину 75, null рендерер и null редактор.
TableColumn(int modelIndex)
Метод-обертка, использующий ширину по умолчанию 75, null рендерер и null редактор.
TableColumn(int modelIndex, int width)
Метод-обертка, использующий null рендерер и null редактор.
TableColumn(int modelIndex, int width, TableCellRenderer cellRenderer, TableCellEditor cellEditor)
Создает и инициализирует экземпляр TableColumn со заданным индексом модели, шириной, рендерером ячейки и редактором ячейки; все конструкторы TableColumn делегируют вызов этому конструктору.

Краткое описание методов

Modifier and Type Method Description
void addPropertyChangeListener(PropertyChangeListener listener)
Добавляет PropertyChangeListener в список слушателей.
protected TableCellRenderer createDefaultHeaderRenderer()
С версии Java 2 platform v1.3 этот метод не вызывается конструктором TableColumn.
void disableResizedPosting()
Устаревшая функция.
с платформой Java 2 v1.3
void enableResizedPosting()
Устаревшая функция.
с платформой Java 2 v1.3
TableCellEditor getCellEditor()
Возвращает TableCellEditor используемый JTable для редактирования значений данного столбца.
TableCellRenderer getCellRenderer()
Возвращает TableCellRenderer используемый JTable для отрисовки значений данного столбца.
TableCellRenderer getHeaderRenderer()
Возвращает TableCellRenderer используемый для отрисовки заголовка TableColumn.
Object getHeaderValue()
Возвращает Object используемый в качестве значения для рендеринга заголовка.
Object getIdentifier()
Возвращает объект identifier для этого столбца.
int getMaxWidth()
Возвращает максимальную ширину для TableColumn.
int getMinWidth()
Возвращает минимальную ширину для TableColumn.
int getModelIndex()
Возвращает индекс модели для этого столбца.
int getPreferredWidth()
Возвращает предпочтительную ширину TableColumn.
PropertyChangeListener[] getPropertyChangeListeners()
Возвращает массив всех PropertyChangeListener добавленных к этому TableColumn с addPropertyChangeListener().
boolean getResizable()
Возвращает true, если пользователь может изменять ширину TableColumn, false в противном случае.
int getWidth()
Возвращает ширину TableColumn.
void removePropertyChangeListener(PropertyChangeListener listener)
Удаляет PropertyChangeListener из списка слушателей.
void setCellEditor(TableCellEditor cellEditor)
Устанавливает редактор, используемый при редактировании ячейки в этом столбце.
void setCellRenderer(TableCellRenderer cellRenderer)
Устанавливает TableCellRenderer используемый JTable для отрисовки отдельных значений для этого столбца.
void setHeaderRenderer(TableCellRenderer headerRenderer)
Устанавливает TableCellRenderer используемый для отрисовки заголовка TableColumn в headerRenderer.
void setHeaderValue(Object headerValue)
Устанавливает Object, строковое представление которого будет использоваться в качестве значения для headerRenderer.
void setIdentifier(Object identifier)
Устанавливает идентификатор TableColumn в anIdentifier.
void setMaxWidth(int maxWidth)
Устанавливает максимальную ширину TableColumn в maxWidth, или, если maxWidth меньше минимальной ширины, в минимальную ширину.
void setMinWidth(int minWidth)
Устанавливает минимальную ширину TableColumn в minWidth, корректируя новую минимальную ширину, если необходимо, чтобы 0 <= minWidth <= maxWidth.
void setModelIndex(int modelIndex)
Устанавливает индекс модели для этого столбца.
void setPreferredWidth(int preferredWidth)
Устанавливает предпочтительную ширину этого столбца в preferredWidth.
void setResizable(boolean isResizable)
Устанавливает возможность изменения размера этого столбца.
void setWidth(int width)
Этот метод не должен использоваться для установки ширины столбцов в JTable, используйте setPreferredWidth вместо этого.
void sizeWidthToFit()
Изменяет размер TableColumn для соответствия ширине ячейки его заголовка.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

COLUMN_WIDTH_PROPERTY

public static final String COLUMN_WIDTH_PROPERTY
Устарело с платформой Java 2 v1.3. Используйте строковые литералы для идентификации свойств.
См. также:
  • Значения константных полей

HEADER_VALUE_PROPERTY

public static final String HEADER_VALUE_PROPERTY
Устарело с платформой Java 2 v1.3. Используйте строковые литералы для идентификации свойств.
См. также:
  • Значения константных полей

HEADER_RENDERER_PROPERTY

public static final String HEADER_RENDERER_PROPERTY
Устарело с платформой Java 2 v1.3. Используйте строковые литералы для идентификации свойств.
См. также:
  • Значения константных полей

CELL_RENDERER_PROPERTY

public static final String CELL_RENDERER_PROPERTY
Устарело с платформой Java 2 v1.3. Используйте строковые литералы для идентификации свойств.
См. также:
  • Значения константных полей

modelIndex

protected int modelIndex
Индекс столбца в модели, который должен отображаться этим TableColumn. При перемещении столбцов в представлении modelIndex остается неизменным.

identifier

protected Object identifier
Этот объект не используется внутренними механизмами рисования JTable; идентификаторы могут быть заданы в TableColumn в качестве необязательного способа маркировки и поиска столбцов таблицы. Пакет таблицы не изменяет и не вызывает методы в этих объектах идентификаторов, кроме метода equals, который используется в методе getColumnIndex() в DefaultTableColumnModel.

width

protected int width
Ширина столбца.

minWidth

protected int minWidth
Минимальная ширина столбца.

maxWidth

protected int maxWidth
Максимальная ширина столбца.

headerRenderer

protected TableCellRenderer headerRenderer
Рисовальщик, используемый для отрисовки заголовка столбца.

headerValue

protected Object headerValue
Значение заголовка столбца.

cellRenderer

protected TableCellRenderer cellRenderer
Рисовальщик, используемый для отрисовки ячеек данных столбца.

cellEditor

protected TableCellEditor cellEditor
Редактор, используемый для редактирования ячеек данных столбца.

isResizable

protected boolean isResizable
Если true, пользователь может изменять размер столбца; по умолчанию true.

resizedPostingDisableCount

@Deprecated protected transient int resizedPostingDisableCount
Устаревший.
с платформы Java 2 v1.3
Это поле не использовалось в предыдущих версиях, и в настоящее время нет планов по его поддержке в будущем.

Подробное описание конструкторов

TableColumn

public TableColumn()
Метод-обёртка, использующий по умолчанию индекс модели 0, ширину 75, null рисовальщик и null редактор. Этот метод предназначен для сериализации.
См. также:
  • TableColumn(int, int, TableCellRenderer, TableCellEditor)

TableColumn

public TableColumn(int modelIndex)
Метод-обёртка, использующий ширину по умолчанию 75, null рисовальщик и null редактор.
Параметры:
modelIndex - индекс столбца в модели, который предоставляет данные для этого столбца в таблице; индекс модели остается неизменным, даже когда столбцы переупорядочиваются в представлении
См. также:
  • TableColumn(int, int, TableCellRenderer, TableCellEditor)

TableColumn

public TableColumn(int modelIndex, int width)
Метод-обёртка, использующий null рисовальщик и null редактор.
Параметры:
modelIndex - индекс столбца в модели, который предоставляет данные для этого столбца в таблице; индекс модели остается неизменным, даже когда столбцы переупорядочиваются в представлении
width - предпочтительная ширина и начальная ширина этого столбца
См. также:
  • TableColumn(int, int, TableCellRenderer, TableCellEditor)

TableColumn

public TableColumn(int modelIndex, int width, TableCellRenderer cellRenderer, TableCellEditor cellEditor)
Создаёт и инициализирует экземпляр TableColumn со значениями индекса модели, ширины, рисовальщика ячеек и редактора ячеек. Все TableColumn конструкторы делегируют вызов этому. Значение width используется как для начальной, так и для предпочтительной ширины. Если width отрицательное, они устанавливаются в 0. Минимальная ширина устанавливается в 15, если начальная ширина меньше, в противном случае она устанавливается равной начальной ширине.

Когда cellRenderer или cellEditor параметр null, используется значение по умолчанию, предоставляемое JTable методом getDefaultRenderer или getDefaultEditor соответственно, для задания значений по умолчанию, основанных на типе данных в этом столбце. Эту стратегию центрирования отрисовки по столбцам можно обойти, переопределив методы getCellRenderer в JTable.

Параметры:
modelIndex - индекс столбца в модели, который предоставляет данные для этого столбца в таблице; индекс модели остается неизменным, даже когда столбцы переупорядочиваются в представлении
width - предпочтительная ширина и начальная ширина этого столбца
cellRenderer - объект, используемый для отрисовки значений в этом столбце
cellEditor - объект, используемый для редактирования значений в этом столбце
См. также:
  • getMinWidth()
  • JTable.getDefaultRenderer(Class)
  • JTable.getDefaultEditor(Class)
  • JTable.getCellRenderer(int, int)
  • JTable.getCellEditor(int, int)

Подробное описание методов

setModelIndex

@BeanProperty(description="The model index.") public void setModelIndex(int modelIndex)
Устанавливает индекс модели для этого столбца. Индекс модели - это индекс столбца в модели, который будет отображаться этим TableColumn. При перемещении TableColumn в представлении индекс модели остаётся неизменным.
Параметры:
modelIndex - новый индекс модели

getModelIndex

public int getModelIndex()
Возвращает индекс модели для этого столбца.
Возвращает:
свойство modelIndex

setIdentifier

@BeanProperty(description="A unique identifier for this column.") public void setIdentifier(Object identifier)
Устанавливает идентификатор столбца TableColumn на anIdentifier.

Примечание: идентификаторы не используются JTable, они предназначены только для удобства внешней маркировки и поиска столбцов.

Параметры:
identifier - идентификатор для этого столбца
См. также:
  • getIdentifier()

getIdentifier

public Object getIdentifier()
Возвращает объект идентификатора identifier для этого столбца. Примечание: идентификаторы не используются JTable, они предназначены только для удобства внешнего использования. Если identifier равен null, то getIdentifier() возвращает getHeaderValue по умолчанию.
Возвращает:
свойство identifier
См. также:
  • setIdentifier(java.lang.Object)

setHeaderValue

@BeanProperty(description="The text to be used by the header renderer.") public void setHeaderValue(Object headerValue)
Устанавливает значение Object, строковое представление которого будет использоваться как значение для заголовка headerRenderer. При создании TableColumn, по умолчанию значение headerValue равно null.
Параметры:
headerValue - новое значение заголовка
См. также:
  • getHeaderValue()

getHeaderValue

public Object getHeaderValue()
Возвращает Object, используемое в качестве значения для рендеринга заголовка.
Возвращает:
свойство headerValue
См. также:
  • setHeaderValue(java.lang.Object)

setHeaderRenderer

@BeanProperty(description="The header renderer.") public void setHeaderRenderer(TableCellRenderer headerRenderer)
Устанавливает TableCellRenderer, используемый для отрисовки заголовка TableColumn в headerRenderer.

Ответственность за отрисовку индикатора сортировки лежит на рендерерах заголовка. Если вы используете сортировку и задаете рендерер, ваш рендерер должен отображать указание сортировки.

Параметры:
headerRenderer - новый headerRenderer
См. также:
  • getHeaderRenderer()

getHeaderRenderer

public TableCellRenderer getHeaderRenderer()
Возвращает TableCellRenderer, используемый для отрисовки заголовка TableColumn. Когда headerRenderer является null, JTableHeader использует свой defaultRenderer. Значение по умолчанию для headerRenderer — null.
Возвращает:
свойство headerRenderer
См. также:
  • setHeaderRenderer(javax.swing.table.TableCellRenderer)
  • setHeaderValue(java.lang.Object)
  • JTableHeader.getDefaultRenderer()

setCellRenderer

@BeanProperty(description="The renderer to use for cell values.") public void setCellRenderer(TableCellRenderer cellRenderer)
Устанавливает TableCellRenderer, используемый JTable для отрисовки отдельных значений в этом столбце.
Параметры:
cellRenderer - новый cellRenderer
См. также:
  • getCellRenderer()

getCellRenderer

public TableCellRenderer getCellRenderer()
Возвращает TableCellRenderer, используемый JTable для отрисовки значений в этом столбце. cellRenderer столбца не только управляет визуальным видом столбца, но также используется для интерпретации объекта значения, предоставленного TableModel. Когда cellRenderer является null, JTable использует рендерер по умолчанию, основанный на классе ячеек в этом столбце. Значение по умолчанию для cellRenderer — null.
Возвращает:
свойство cellRenderer
См. также:
  • setCellRenderer(javax.swing.table.TableCellRenderer)
  • JTable.setDefaultRenderer(java.lang.Class<?>, javax.swing.table.TableCellRenderer)

setCellEditor

@BeanProperty(description="The editor to use for cell values.") public void setCellEditor(TableCellEditor cellEditor)
Устанавливает редактор, используемый при редактировании ячейки в этом столбце.
Параметры:
cellEditor - новый cellEditor
См. также:
  • getCellEditor()

getCellEditor

public TableCellEditor getCellEditor()
Возвращает TableCellEditor, используемый JTable для редактирования значений в этом столбце. Когда cellEditor является null, JTable использует редактор по умолчанию, основанный на классе ячеек в этом столбце. Значение по умолчанию для cellEditor — null.
Возвращает:
свойство cellEditor
См. также:
  • setCellEditor(javax.swing.table.TableCellEditor)
  • JTable.setDefaultEditor(java.lang.Class<?>, javax.swing.table.TableCellEditor)

setWidth

@BeanProperty(description="The width of the column.") public void setWidth(int width)
Этот метод не следует использовать для установки ширины столбцов в JTable, используйте setPreferredWidth вместо этого. Как и менеджер компоновки в AWT, JTable автоматически изменяет ширину столбца всякий раз, когда изменяется размер самой таблицы или предпочтительная ширина столбца. Поэтому программная установка ширины не оказывает долгосрочного влияния.

Этот метод устанавливает ширину этого столбца в width. Если width превышает минимальную или максимальную ширину, она корректируется до соответствующего предельного значения.

Параметры:
width - новая ширина
См. также:
  • getWidth()
  • setMinWidth(int)
  • setMaxWidth(int)
  • setPreferredWidth(int)
  • JTable.doLayout()

getWidth

public int getWidth()
Возвращает ширину TableColumn. Ширина по умолчанию составляет 75.
Возвращает:
свойство width
См. также:
  • setWidth(int)

setPreferredWidth

@BeanProperty(description="The preferred width of the column.") public void setPreferredWidth(int preferredWidth)
Устанавливает предпочтительную ширину этого столбца в preferredWidth. Если preferredWidth превышает минимальную или максимальную ширину, она корректируется до соответствующего предельного значения.

Для получения подробной информации о том, как рассчитываются ширины столбцов в JTable (и JTableHeader) из preferredWidth, см. метод doLayout в JTable.

Параметры:
preferredWidth - новая предпочтительная ширина
См. также:
  • getPreferredWidth()
  • JTable.doLayout()

getPreferredWidth

public int getPreferredWidth()
Возвращает предпочтительную ширину TableColumn. По умолчанию предпочтительная ширина составляет 75.
Возвращает:
свойство preferredWidth
См. также:
  • setPreferredWidth(int)

setMinWidth

@BeanProperty(description="The minimum width of the column.") public void setMinWidth(int minWidth)
Устанавливает минимальную ширину TableColumn до minWidth, корректируя новую минимальную ширину, если необходимо, для обеспечения 0 <= minWidth <= maxWidth. Например, если аргумент minWidth отрицателен, этот метод устанавливает свойство minWidth в 0.

Если значение свойства width или preferredWidth меньше новой минимальной ширины, этот метод устанавливает это свойство в новую минимальную ширину.

Параметры:
minWidth - новая минимальная ширина
См. также:
  • getMinWidth()
  • setPreferredWidth(int)
  • setMaxWidth(int)

getMinWidth

public int getMinWidth()
Возвращает минимальную ширину TableColumn. Ширина TableColumn не может быть уменьшена ни пользователем, ни программно.
Возвращает:
свойство minWidth
См. также:
  • setMinWidth(int)
  • TableColumn(int, int, TableCellRenderer, TableCellEditor)

setMaxWidth

@BeanProperty(description="The maximum width of the column.") public void setMaxWidth(int maxWidth)
Устанавливает максимальную ширину TableColumn в maxWidth или, если maxWidth меньше минимальной ширины, в минимальную ширину.

Если значение свойства width или preferredWidth больше новой максимальной ширины, этот метод устанавливает это свойство в новую максимальную ширину.

Параметры:
maxWidth - новая максимальная ширина
См. также:
  • getMaxWidth()
  • setPreferredWidth(int)
  • setMinWidth(int)

getMaxWidth

public int getMaxWidth()
Возвращает максимальную ширину TableColumn. Ширина TableColumn не может быть больше этой ни пользователем, ни программно. По умолчанию maxWidth равен Integer.MAX_VALUE.
Возвращает:
свойство maxWidth
См. также:
  • setMaxWidth(int)

setResizable

@BeanProperty(description="Whether or not this column can be resized.") public void setResizable(boolean isResizable)
Устанавливает, можно ли изменять размер этого столбца.
Параметры:
isResizable - если true, изменение размера разрешено; иначе false
См. также:
  • getResizable()

getResizable

public boolean getResizable()
Возвращает true, если пользователю разрешено изменять ширину TableColumn, в противном случае — false. Вы можете программно изменять ширину независимо от этого параметра. По умолчанию значение true.
Returns:
свойство isResizable
См. также:
  • setResizable(boolean)

sizeWidthToFit

public void sizeWidthToFit()
Изменяет размер TableColumn для соответствия ширине ячейки заголовка. Этот метод ничего не делает, если рендерер заголовка null (случай по умолчанию). В противном случае он устанавливает минимальную, максимальную и предпочтительную ширины этого столбца на значения минимального, максимального и предпочтительного размеров компонента, полученного от рендерера заголовка. Переменная "width" этого объекта TableColumn также устанавливается на предпочтительную ширину. Обратите внимание, что этот метод не используется внутри пакета таблиц.
См. также:
  • setPreferredWidth(int)

disableResizedPosting

@Deprecated public void disableResizedPosting()
Устарело.
с версии Java 2 platform v1.3
Это поле не использовалось в предыдущих версиях, и в настоящее время нет планов по его поддержке в будущем.

enableResizedPosting

@Deprecated public void enableResizedPosting()
Устарело.
с версии Java 2 platform v1.3
Это поле не использовалось в предыдущих версиях, и в настоящее время нет планов по его поддержке в будущем.

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
Добавляет PropertyChangeListener в список слушателей. Слушатель регистрируется для всех связанных свойств этого класса, включая следующие:
  • modelIndex столбца TableColumn ("modelIndex")
  • идентификатор столбца TableColumn ("identifier")
  • значение заголовка столбца TableColumn ("headerValue")
  • рендерер заголовка столбца TableColumn ("headerRenderer")
  • рендерер ячейки столбца TableColumn ("cellRenderer")
  • редактор ячейки столбца TableColumn ("cellEditor")
  • ширина столбца TableColumn ("width")
  • предпочтительная ширина столбца TableColumn ("preferredWidth")
  • минимальная ширина столбца TableColumn ("minWidth")
  • максимальная ширина столбца TableColumn ("maxWidth")
  • состояние изменяемости размера столбца TableColumn ("isResizable")
Parameters:
listener - добавляемый слушатель
См. также:
  • removePropertyChangeListener(PropertyChangeListener)

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
Удаляет PropertyChangeListener из списка слушателей. PropertyChangeListener для удаления был зарегистрирован для всех свойств.
Parameters:
listener - слушатель для удаления

getPropertyChangeListeners

public PropertyChangeListener[] getPropertyChangeListeners()
Возвращает массив всех PropertyChangeListener добавленных в этот объект TableColumn с помощью addPropertyChangeListener().
Returns:
все добавленные PropertyChangeListener или пустой массив, если слушателей нет
Since:
1.4

createDefaultHeaderRenderer

protected TableCellRenderer createDefaultHeaderRenderer()
Начиная с Java 2 platform v1.3, этот метод не вызывается конструктором TableColumn. Ранее этот метод использовался объектом TableColumn для создания рендерера заголовка по умолчанию. Начиная с Java 2 platform v1.3, рендерер заголовка по умолчанию — null. JTableHeader теперь предоставляет свой собственный общий рендерер по умолчанию, так же как и JTable для своих рендереров ячеек.
Returns:
рендерер заголовка по умолчанию
См. также:
  • JTableHeader.createDefaultRenderer()

© 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/TableColumn.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API