Класс TableView
- java.lang.Object
-
- javax.swing.text.View
-
- javax.swing.text.CompositeView
-
- javax.swing.text.BoxView
-
- javax.swing.text.TableView
- Все реализуемые интерфейсы:
- SwingConstants
public abstract class TableView extends BoxView
Реализует интерфейс View для таблицы, которая состоит из структуры элементов, где дочерние элементы элемента, за который отвечает данное представление, представляют собой строки, а дочерние элементы элементов строк — ячейки. Элементы ячеек могут иметь произвольную структуру элементов под ними, которая будет построена с помощью фабрики представлений, возвращаемой методом getViewFactory.
TABLE ROW CELL CELL ROW CELL CELL
Это реализовано как иерархия блоков: сама таблица — вертикальный блок, строки — горизонтальные блоки, а ячейки — вертикальные блоки. Ячейки могут занимать несколько столбцов и строк. По умолчанию таблица может быть представлена как сформированная на сетке (т.е. как-то так, как это можно найти в макете gridbag), где ячейки таблицы могут запросить охват более чем одной ячейки сетки. По умолчанию горизонтальный охват ячеек таблицы будет зависеть от этой сетки, но может быть изменён путём повторной реализации запрошенного охвата ячейки (т.е. ячейки таблицы могут иметь независимый охват, если это необходимо).
- См. также:
View
Вложенные классы
| Модификатор и тип | Класс и описание |
|---|---|
class |
TableView.TableCell Устарело. Ячейка таблицы теперь может быть любой реализацией View. |
class |
TableView.TableRow Представление строки в таблице, ориентированной на строки. |
Поля
Поля, унаследованные от класса javax.swing.text.View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS Поля, унаследованные от интерфейса javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST Конструкторы
| Конструктор и описание |
|---|
TableView(Element elem) Создаёт TableView для данного элемента. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
protected SizeRequirements |
calculateMinorAxisRequirements(int axis,
SizeRequirements r) Вычисление требований к малой оси. |
protected TableView.TableCell |
createTableCell(Element elem) Устарело. Ячейки таблицы теперь могут быть любой произвольной реализацией View и должны создаваться фабрикой представлений, а не таблицей. |
protected TableView.TableRow |
createTableRow(Element elem) Создаёт новую строку таблицы. |
protected void |
forwardUpdate(DocumentEvent.ElementChange ec,
DocumentEvent e,
Shape a,
ViewFactory f) Пересылает данное |
protected View |
getViewAtPosition(int pos,
Rectangle a) Получает дочернее представление, представляющее данную позицию в модели. |
protected void |
layoutColumns(int targetSpan,
int[] offsets,
int[] spans,
SizeRequirements[] reqs) Выравнивает столбцы, чтобы они поместились в заданный интервал. |
protected void |
layoutMinorAxis(int targetSpan,
int axis,
int[] offsets,
int[] spans) Выполнение макета для малой оси блока (т.е. |
void |
replace(int offset,
int length,
View[] views) Изменение дочерних представлений. |
Методы, унаследованные от класса javax.swing.text.BoxView
baselineLayout, baselineRequirements, calculateMajorAxisRequirements, childAllocation, flipEastAndWestAtEnds, getAlignment, getAxis, getChildAllocation, getHeight, getMaximumSpan, getMinimumSpan, getOffset, getPreferredSpan, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layout, layoutChanged, layoutMajorAxis, modelToView, paint, paintChild, preferenceChanged, setAxis, setSize, viewToModel Методы, унаследованные от класса javax.swing.text.CompositeView
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewCount, getViewIndex, getViewIndexAtPosition, loadChildren, modelToView, setInsets, setParagraphInsets, setParent Методы, унаследованные от класса javax.swing.text.View
append, breakView, changedUpdate, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, insertUpdate, isVisible, modelToView, remove, removeAll, removeUpdate, updateChildren, updateLayout, viewToModel Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
TableView
public TableView(Element elem)
Создаёт TableView для указанного элемента.
- Параметры:
-
elem- элемент, за который отвечает данный вид
Методы
createTableRow
protected TableView.TableRow createTableRow(Element elem)
Создаёт новую строку таблицы.
- Параметры:
-
elem- элемент - Возвращает:
- строку
createTableCell
@Deprecated protected TableView.TableCell createTableCell(Element elem)
Устарело. Ячейки таблицы теперь могут быть любыми произвольными реализациями View и должны создаваться фабрикой View, а не таблицей.
- Параметры:
-
elem- элемент - Возвращает:
- ячейку
forwardUpdate
protected void forwardUpdate(DocumentEvent.ElementChange ec,
DocumentEvent e,
Shape a,
ViewFactory f) Описание скопировано из класса: BoxView
Пересылает заданное DocumentEvent дочерним представлениям, которые должны быть уведомлены об изменении модели. Если дочерний элемент изменил свои требования, а выделение было допустимым до пересылки, то часть области от начального дочернего элемента до конца области будет перерисована.
- Переопределяет:
-
forwardUpdateв классеBoxView - Параметры:
-
ec- изменения в элементе, за который отвечает данный вид (может бытьnullесли изменений не было) -
e- информация об изменении из связанного документа -
a- текущее выделение представления -
f- фабрика, используемая для перестроения, если у представления есть дочерние элементы - См. также:
-
View.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),View.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
replace
public void replace(int offset,
int length,
View[] views) Изменение дочерних представлений. Реализовано для обеспечения поведения суперкласса и для аннулирования сетки, чтобы строки и столбцы были перерасчитаны.
- Переопределяет:
-
replaceв классеBoxView - Параметры:
-
offset- начальный индекс в дочерних представлениях для вставки новых представлений; должно быть значение >= 0 и <= getViewCount -
length- количество существующих дочерних представлений для удаления; должно быть значение >= 0 и <= (getViewCount() - offset) -
views- дочерние представления для добавления; это значение может бытьnullдля указания, что дочерние элементы не добавляются (полезно для удаления)
layoutColumns
protected void layoutColumns(int targetSpan,
int[] offsets,
int[] spans,
SizeRequirements[] reqs) Выравнивание столбцов, чтобы они вписались в заданный интервал. Результаты возвращаются через offsets и spans.
- Параметры:
-
targetSpan- заданный интервал для общей ширины всех столбцов таблицы -
reqs- требования, желаемые для каждого столбца. Это максимальный столбец из минимальных, предпочтительных и максимальных запрошенных интервалов ячеек -
spans- возвращаемое значение, сколько выделить каждому столбцу -
offsets- возвращаемое значение смещения от начала для каждого столбца
layoutMinorAxis
protected void layoutMinorAxis(int targetSpan,
int axis,
int[] offsets,
int[] spans) Выполнение выравнивания по малой оси области (т.е. оси, перпендикулярной оси, которую она представляет). Результаты выравнивания должны быть помещены в заданные массивы, которые представляют выделение для дочерних элементов по малой оси. Этот метод вызывается суперклассом всякий раз, когда выравнивание нужно обновить по малой оси.
Эта реализация вызывает метод layoutColumns, а затем передаёт вызов суперклассу для фактического выполнения выравнивания строк таблицы.
- Переопределяет:
-
layoutMinorAxisв классеBoxView - Параметры:
-
targetSpan- общий интервал, предоставленный представлению, который будет использован для выравнивания дочерних элементов. -
axis- выравниваемая ось. -
offsets- смещения от начала представления для каждого дочернего представления. Это значение возврата, и оно заполняется реализацией этого метода. -
spans- интервал каждого дочернего представления. Это значение возврата, и оно заполняется реализацией этого метода.
calculateMinorAxisRequirements
protected SizeRequirements calculateMinorAxisRequirements(int axis,
SizeRequirements r) Вычисление требований для малой оси. Этот метод вызывается суперклассом всякий раз, когда требуется обновить требования (т. е. через данное представление было отправлено сообщение preferenceChanged).
Эта реализация вычисляет требования как сумму требований столбцов.
- Переопределяет:
-
calculateMinorAxisRequirementsв классеBoxView - Параметры:
-
axis- вычисляемая ось -
r- объектSizeRequirements; еслиnullбудет создан новый - Возвращает:
- новый инициализированный объект
SizeRequirements - См. также:
SizeRequirements
getViewAtPosition
protected View getViewAtPosition(int pos,
Rectangle a) Получение дочернего представления, которое представляет заданную позицию в модели. Эта реализация перебирает дочерние элементы, ища диапазон, который содержит заданную позицию. В данном представлении дочерние элементы не обязательно имеют взаимно однозначное соответствие с дочерними элементами.
- Переопределяет:
-
getViewAtPositionв классеCompositeView - Параметры:
-
pos- позиция поиска >= 0 -
a- выделение таблицы на входе и выделение представления, содержащего позицию на выходе - Возвращает:
- представление, представляющее заданную позицию, или
nullесли такого нет
© 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.