Класс FlowView
java.lang.Object
javax.swing.text.View
javax.swing.text.CompositeView
javax.swing.text.BoxView
javax.swing.text.FlowView
- Все реализованные интерфейсы:
SwingConstants
- Прямые известные подклассы:
ParagraphView
public abstract class FlowView extends BoxView
Представление, которое пытается расположить своих потомков в частично ограниченном пространстве. Это может быть использовано для построения таких элементов, как абзацы, страницы и т. д. Поток состоит из следующих функциональных блоков.
- Логический набор представлений-потомков, которые используются как пул для построения физического представления.
- Стратегия преобразования логического представления в физическое (с потоком).
- Ограничения, по которым работает стратегия.
- Физическая структура, которая представляет поток. Посредством потомков этого представления размещаются части логических представлений, образуя поток.
- С тех пор:
- 1.3
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
FlowView.FlowStrategy |
Стратегия для поддержания физической формы потока. |
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected View |
layoutPool |
Представления, которые представляют дочерние элементы элемента, представленного этим представлением (логическое представление для преобразования в физическое). |
protected int |
layoutSpan |
Стандартные ограничения, относительно которых создается поток. |
protected FlowView.FlowStrategy |
strategy |
Поведение для обновления потока. |
Поля, объявленные в классе 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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
FlowView |
Создает FlowView для данного элемента. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected SizeRequirements |
calculateMinorAxisRequirements |
Вычисление требований по малой оси. |
void |
changedUpdate |
Уведомление от документа о том, что атрибуты были изменены в месте, за которое отвечает данное представление. |
protected abstract View |
createRow() |
Создает представление, которое должно хранить строку дочерних элементов в потоке. |
int |
getFlowAxis() |
Возвращает ось, по которой должны размещаться представления. |
int |
getFlowSpan |
Возвращает ограничивающий диапазон для потока для данного индекса дочернего элемента. |
int |
getFlowStart |
Возвращает расположение по оси потока, с которого начнется диапазон потока. |
protected int |
getViewIndexAtPosition |
Возвращает индекс дочернего представления, соответствующий заданной позиции в модели. |
void |
insertUpdate |
Уведомление о том, что что-то было вставлено в документ в месте, за которое отвечает данное представление. |
protected void |
layout |
Расположение дочерних элементов. |
protected void |
loadChildren |
Загрузка всех дочерних элементов для инициализации представления. |
void |
removeUpdate |
Уведомление о том, что что-то было удалено из документа в месте, за которое отвечает данное представление. |
Методы, объявленные в классе javax.swing.text.BoxView
baselineLayout, baselineRequirements, calculateMajorAxisRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAlignment, getAxis, getChildAllocation, getHeight, getMaximumSpan, getMinimumSpan, getOffset, getPreferredSpan, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layoutChanged, layoutMajorAxis, layoutMinorAxis, modelToView, paint, paintChild, preferenceChanged, replace, setAxis, setSize, viewToModel
Методы, объявленные в классе javax.swing.text.CompositeView
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPosition, getViewCount, getViewIndex, modelToView, setInsets, setParagraphInsets, setParent
Методы, объявленные в классе javax.swing.text.View
append, breakView, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, isVisible, modelToView, remove, removeAll, updateChildren, updateLayout, viewToModel
Подробное описание полей
layoutSpan
protected int layoutSpan
Ограничение по умолчанию, относительно которого создается поток.
layoutPool
protected View layoutPool
Это представления, которые представляют дочерние элементы элемента, который представляет данное представление (логическое представление для перевода в физическое представление). Они не являются непосредственными дочерними элементами данного представления. Они либо размещаются непосредственно в строках, либо используются для разделения на более мелкие части, чтобы сформировать физическое представление.
strategy
protected FlowView.FlowStrategy strategy
Поведение для поддержания обновленности потока. По умолчанию это одиночка, общая для всех экземпляров FlowView (FlowStrategy бессостоятельна). Подклассы могут создать альтернативную стратегию, которая может сохранять состояние.
Подробное описание конструкторов
FlowView
public FlowView(Element elem, int axis)
Создаёт FlowView для данного элемента.
- Параметры:
-
elem- элемент, за который отвечает данное представление -
axis- может быть либо View.X_AXIS, либо View.Y_AXIS
Подробное описание методов
getFlowAxis
public int getFlowAxis()
Получает ось, по которой должны выстраиваться представления. По умолчанию это ось, перпендикулярная оси, по которой выкладываются строки потока (сама ось строк потока по умолчанию). Это обычно используется
FlowStrategy. - Возвращает:
- ось, по которой должны выстраиваться представления
getFlowSpan
public int getFlowSpan(int index)
Получает ограничение области выравнивания для заданного индекса дочернего элемента. Вызывается FlowStrategy при обновлении потока. Поток может быть сформирован, предоставляя разные значения для ограничений строк. По умолчанию возвращается вся область внутри отступов вдоль оси потока.
- Параметры:
-
index- индекс обновляемой строки. Должно быть значение >= 0 и < getViewCount(). - Возвращает:
- ограничение области выравнивания для заданного индекса дочернего элемента
- См. также:
getFlowStart
public int getFlowStart(int index)
Получает положение вдоль оси потока, с которого начнется область выравнивания. Вызывается FlowStrategy при обновлении потока. Поток может быть сформирован, предоставляя разные значения для ограничений строк.
- Параметры:
-
index- индекс обновляемой строки. Должно быть значение >= 0 и < getViewCount(). - Возвращает:
- положение вдоль оси потока, с которого начнется область выравнивания
- См. также:
createRow
protected abstract View createRow()
Создаёт представление, которое должно использоваться для хранения строк дочерних элементов в потоке. Вызывается FlowStrategy при добавлении или удалении дочерних элементов (т.е. строк) в процессе обновления потока.
- Возвращает:
- представление, которое должно использоваться для хранения строк дочерних элементов в потоке
loadChildren
protected void loadChildren(ViewFactory f)
Загружает все дочерние элементы для инициализации представления. Вызывается методом
setParent. Переопределено, чтобы не загружать дочерние элементы напрямую (так как они создаются в процессе форматирования). Если layoutPool равно null, создаётся экземпляр LogicalView для представления логического представления, используемого в процессе форматирования.- Переопределяет:
-
loadChildrenв классеCompositeView - Параметры:
-
f- фабрика представления - См. также:
getViewIndexAtPosition
protected int getViewIndexAtPosition(int pos)
Получает индекс дочернего представления, соответствующий заданной позиции в модели.
- Переопределяет:
-
getViewIndexAtPositionв классеCompositeView - Параметры:
-
pos- позиция >= 0 - Возвращает:
- индекс представления, соответствующего данной позиции, или -1, если такое представление не найдено
layout
protected void layout(int width, int height)
Выравнивает дочерние элементы. Если область вдоль оси потока изменилась, выравнивание отмечается как недействительное, что заставит родительский класс пересчитать выравнивание вдоль оси. Метод FlowStrategy.layout будет вызван для перестроения строк потока при необходимости. Если высота данного представления изменяется (определяется предпочтительным размером вдоль оси), вызывается preferenceChanged. После этого выполняется обычное выравнивание по оси родительского класса.
- Переопределяет:
-
layoutв классеBoxView - Параметры:
-
width- ширина для выравнивания >= 0. Это ширина внутри области отступа. -
height- высота для выравнивания >= 0. Это высота внутри области отступа.
calculateMinorAxisRequirements
protected SizeRequirements calculateMinorAxisRequirements(int axis, SizeRequirements r)
Вычисляет требования вдоль оси меньшей величины. Это реализовано для перенаправления запроса в логическое представление путём вызова getMinimumSpan, getPreferredSpan и getMaximumSpan на нём.
- Переопределяет:
-
calculateMinorAxisRequirementsв классеBoxView - Параметры:
-
axis- изучаемая ось -
r- объектSizeRequirements; еслиnullодин будет создан - Возвращает:
- новый инициализированный объект
SizeRequirements - См. также:
insertUpdate
public void insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)
Уведомляет о том, что в документ вставляется что-то в месте, за которое отвечает это представление.
- Переопределяет:
-
insertUpdateв классеView - Параметры:
-
changes- информация о изменении из связанного документа -
a- текущее размещение представления -
f- фабрика, которая используется для перестроения, если у представления есть дочерние элементы - См. также:
removeUpdate
public void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
Уведомляет о том, что из документа что-то удалено в месте, за которое отвечает это представление.
- Переопределяет:
-
removeUpdateв классеView - Параметры:
-
changes- информация о изменении из связанного документа -
a- текущее размещение представления -
f- фабрика, которая используется для перестроения, если у представления есть дочерние элементы - См. также:
changedUpdate
public void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)
Уведомляет от документа о том, что атрибуты были изменены в месте, за которое отвечает данное представление.
- Переопределяет:
-
changedUpdateв классеView - Параметры:
-
changes- информация о изменении из связанного документа -
a- текущее размещение представления -
f- фабрика, которая используется для перестроения, если у представления есть дочерние элементы - См. также:
© 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/text/FlowView.html