Вид класса
- Все реализованные интерфейсы:
SwingConstants
- Непосредственные подклассы:
-
AsyncBoxView,ComponentView,CompositeView,GlyphView,IconView,ImageView,PlainView
public abstract class View extends Object implements SwingConstants
Важной частью пакета text является класс View. Как следует из названия, он представляет собой вид модели текста или фрагмент модели текста. Именно этот класс отвечает за отображение компонента текста. Вид не предназначен для представления чего-то совершенно нового, что нужно изучать, а скорее подобен легковесному компоненту.
По умолчанию вид очень легкий. Он содержит ссылку на родительский вид, из которого он может извлекать много чего без хранения состояния, и ссылку на часть модели (Element). Вид не обязан точно представлять элемент в модели, это просто типичное и поэтому удобное отображение. В качестве альтернативы вид может хранить пару объектов Position для поддержания своего местоположения в модели (т.е. представлять фрагмент элемента). Это, как правило, результат форматирования, когда виды были разбиты на части. Удобство существенной связи с элементом упрощает создание фабрик для создания видов и упрощает отслеживание фрагментов вида по мере изменения модели и необходимости изменения вида для отражения модели. Простые виды, следовательно, непосредственно представляют элемент, а сложные виды — нет.
Вид выполняет следующие задачи:
- Участие в макете.
-
Вид имеет метод
setSize, который подобен методамdoLayoutиsetSizeвComponentв совокупности. Вид имеет методpreferenceChanged, который похож наinvalidateвComponent, за исключением того, что можно проигнорировать только одну ось, и идентифицируется дочерний элемент, запросивший изменение.Вид выражает желаемый размер в терминах трех значений: минимального, предпочтительного и максимального размера. Макет в виде может выполняться независимо по каждой оси. Для правильной реализации View минимальный размер будет меньше или равен предпочтительному, который в свою очередь будет меньше или равен максимальному размеру.
Минимальный набор методов для макета:
Метод
setSizeдолжен быть готов к вызову несколько раз (т.е. он может вызываться даже если размер не изменился). МетодsetSizeобычно вызывается для того, чтобы убедиться, что макет View завершен перед выполнением операции над ним, требующей обновленного макета. Размер вида всегда должен устанавливаться в значение, находящееся между минимальным и максимальным размерами, заданными этим видом. Кроме того, вид всегда должен вызывать методpreferenceChangedв родительском элементе, если он изменил значения макета, которые он хотел, и ожидает, что родительский элемент их учтет. Родительский View не обязан распознавать изменение, пока не будет отправленpreferenceChanged. Это позволяет реализациям родительского View кешировать требования дочерних элементов, если это необходимо. Последовательность вызовов выглядит примерно так:Точная последовательность вызовов зависит от функциональности макета родительского вида (если у вида есть дочерние элементы). Вид может собрать предпочтения дочерних элементов перед тем, как определить, что он даст каждому дочернему элементу, или он может итеративно обновлять дочерние элементы по одному.
- Отображение части модели.
-
Это делается в методе paint, который очень похож на метод paint компонента. Ожидается, что виды могут потенциально заполнять довольно большое дерево. У
Viewесть следующие семантики для рендеринга:- Вид получает свое выделение от родительского элемента во время рисования, поэтому он должен быть готов повторно выполнить макет, если выделенная область отличается от того, с чем он готов справиться.
- Система координат совпадает с системой координат размещающего
Component(т.е.Componentвозвращаемого методомgetContainer). Это означает, что дочерний вид живет в той же системе координат, что и родительский вид, если родительский вид явно не изменил систему координат. Чтобы запланировать перерисовку, вид может вызвать repaint для размещающегоComponent. - По умолчанию дочерние элементы не обрезаются. Эффективнее разрешить обрезку вида только в том случае, если это действительно необходимо.
- Объект
Graphicsне инициализируется ни каким образом. Вид должен установить любые необходимые параметры. - Сам по себе
Viewявляется прозрачным. Хотя вид может отображаться в своем полном выделении, обычно так не происходит. Отображение выполняется путем обхода дерева реализацийView. КаждыйViewотвечает за отображение своих дочерних элементов. Эта особенность необходима для обеспечения безопасности потоков. Хотя реализации вида не обязательно должны быть реализованы с учетом безопасности потоков, другие реализации вида, использующие конкурентность, могут полагаться на обход дерева для обеспечения безопасности потоков. - Порядок расположения видов относительно модели зависит от реализации. Хотя дочерние виды обычно располагаются в том же порядке, что и в модели, они могут визуально располагаться в совершенно другом порядке. Реализации вида могут иметь Z-порядок, если дочерние элементы перекрываются.
Методы для рендеринга:
- Перевод между системами координат модели и вида.
-
Поскольку объекты вида создаются из фабрики и, следовательно, не могут гарантированно иметь определенный шаблон, необходимо выполнить преобразование, чтобы правильно определить пространственное представление модели. Методы для этого:
Макет должен быть валиден перед попыткой преобразования. Преобразование не является действительным и не должно выполняться во время распространения изменений из модели с помощью
DocumentEvent. - Реагирование на изменения в модели.
-
Если весь вид представлен многими частями (что является лучшим вариантом, если вы хотите иметь возможность изменять вид и писать наименьшее количество нового кода), было бы непрактично иметь большое количество
DocumentListener. Если каждый вид слушал модель, только несколько из них фактически заинтересовались бы распространением изменений в конкретное время. Поскольку модель не знает о видах, она не может отфильтровать передачу информации об изменениях. Вместо этого иерархия вида отвечает за распространение информации об изменениях. На любом уровне иерархии вид достаточно хорошо знает своих дочерние элементы, чтобы лучше распределить информацию об изменениях далее. Следовательно, изменения распространяются, начиная с корня иерархии вида. Методы для этого:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
BadBreakWeight |
Вес, указывающий, что представление является плохим местом для разрыва с точки зрения форматирования. |
static final int |
ExcellentBreakWeight |
Вес, указывающий, что представление поддерживает разрыв, и это очень привлекательное место для разрыва. |
static final int |
ForcedBreakWeight |
Вес, указывающий, что представление поддерживает разрыв, и оно должно быть разорвано для правильного представления при размещении в представлении, которое форматирует своих потомков, разрывая их. |
static final int |
GoodBreakWeight |
Вес, указывающий, что представление поддерживает разрыв, но, вероятно, существуют лучшие варианты. |
static final int |
X_AXIS |
Ось для операций форматирования/разрыва. |
static final int |
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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
View |
Создаёт новый View объект. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
append |
Добавляет одно дочернее представление. |
View |
breakView |
Пытается разорвать это представление по заданной оси. |
void |
changedUpdate |
Получает уведомление из документа о том, что атрибуты были изменены в месте, за которое это представление отвечает. |
View |
createFragment |
Создаёт представление, представляющее часть элемента. |
protected void |
forwardUpdate |
Передаёт данный DocumentEvent дочерним представлениям, которые должны быть уведомлены об изменении модели. |
protected void |
forwardUpdateToView |
Передаёт DocumentEvent заданному дочернему представлению. |
float |
getAlignment |
Определяет желаемое выравнивание этого представления вдоль оси. |
AttributeSet |
getAttributes() |
Извлекает атрибуты, используемые при рендеринге. |
int |
getBreakWeight |
Определяет, насколько привлекательным является место разрыва в этом представлении. |
Shape |
getChildAllocation |
Извлекает выделение для данного дочернего представления. |
Container |
getContainer() |
Извлекает контейнер, содержащий представление. |
Document |
getDocument() |
Извлекает модель, связанную с представлением. |
Element |
getElement() |
Извлекает структурную часть объекта, к которой сопоставлено это представление. |
int |
getEndOffset() |
Извлекает часть модели, за которую это представление отвечает. |
Graphics |
getGraphics() |
Извлекает Graphics для рендеринга. |
float |
getMaximumSpan |
Определяет максимальную длину этого представления вдоль оси. |
float |
getMinimumSpan |
Определяет минимальную длину этого представления вдоль оси. |
int |
getNextVisualPositionFrom |
Предлагает способ определения следующего визуально представленного расположения модели, в котором можно разместить курсор. |
View |
getParent() |
Возвращает родителя представления. |
abstract float |
getPreferredSpan |
Определяет предпочтительную длину этого представления вдоль оси. |
int |
getResizeWeight |
Определяет возможность изменения размера представления вдоль заданной оси. |
int |
getStartOffset() |
Извлекает часть модели, за которую это представление отвечает. |
String |
getToolTipText |
Возвращает текст всплывающей подсказки в указанном месте. |
View |
getView |
Получает n-ое дочернее представление. |
int |
getViewCount() |
Возвращает количество представлений в этом представлении. |
ViewFactory |
getViewFactory() |
Извлекает реализацию ViewFactory, которая питает иерархию представлений. |
int |
getViewIndex |
Возвращает индекс дочернего представления, представляющий данную позицию в представлении. |
int |
getViewIndex |
Возвращает индекс дочернего представления, представляющий данную позицию в модели. |
void |
insert |
Вставляет одно дочернее представление. |
void |
insertUpdate |
Получает уведомление о том, что что-то было вставлено в документ в месте, за которое это представление отвечает. |
boolean |
isVisible() |
Возвращает логическое значение, указывающее, отображается ли представление или нет. |
Shape |
modelToView |
Устарело. |
abstract Shape |
modelToView |
Предоставляет отображение, для данного символа, из пространства координат модели документа в пространство координат представления. |
Shape |
modelToView |
Предоставляет отображение, для данного региона, из пространства координат модели документа в пространство координат представления. |
abstract void |
paint |
Отображает с использованием заданной поверхности рендеринга и области на этой поверхности. |
void |
preferenceChanged |
Дочерние представления могут вызвать это у родителя, чтобы указать, что предпочтение изменилось и должно быть пересчитано для размещения. |
void |
remove |
Удаляет одно из дочерних элементов в заданной позиции. |
void |
removeAll() |
Удаляет все дочерние элементы. |
void |
removeUpdate |
Получает уведомление о том, что что-то было удалено из документа в месте, за которое это представление отвечает. |
void |
replace |
Заменяет дочерние представления. |
void |
setParent |
Устанавливает родительское представление для этого представления. |
void |
setSize |
Устанавливает размер представления. |
protected boolean |
updateChildren |
Обновляет дочерние представления в ответ на получение уведомления о том, что модель изменилась, и есть запись об изменении для элемента, за который это представление отвечает. |
protected void |
updateLayout |
Обновляет макет в ответ на получение уведомления об изменении от модели. |
int |
viewToModel |
Устарело. |
abstract int |
viewToModel |
Предоставляет отображение из пространства координат представления в логическое пространство координат модели. |
Подробное описание полей
BadBreakWeight
public static final int BadBreakWeight
GoodBreakWeight
public static final int GoodBreakWeight
ExcellentBreakWeight
public static final int ExcellentBreakWeight
ForcedBreakWeight
public static final int ForcedBreakWeight
X_AXIS
public static final int X_AXIS
- См. также:
Y_AXIS
public static final int Y_AXIS
- См. также:
Подробное описание конструкторов
View
public View(Element elem)
View. - Параметры:
-
elem- представляемыйElement
Подробное описание методов
getParent
public View getParent()
- Возвращает:
- родителя или
null, если родитель отсутствует
isVisible
public boolean isVisible()
- Возвращает:
- всегда возвращает true
getPreferredSpan
public abstract float getPreferredSpan(int axis)
- Параметры:
-
axis- может быть либоView.X_AXIS, либоView.Y_AXIS - Возвращает:
- размах, который представление хочет отобразить. Обычно представление отображается в возвращаемом размахе, хотя это не гарантируется. Родитель может выбрать изменение размера или разрыв представления
getMinimumSpan
public float getMinimumSpan(int axis)
- Параметры:
-
axis- может быть либоView.X_AXIS, либоView.Y_AXIS - Возвращает:
- минимальный размах, в который представление может быть отображено
- См. также:
getMaximumSpan
public float getMaximumSpan(int axis)
- Параметры:
-
axis- может быть либоView.X_AXIS, либоView.Y_AXIS - Возвращает:
- максимальный размах, в который представление может быть отображено
- См. также:
preferenceChanged
public void preferenceChanged(View child, boolean width, boolean height)
revalidate на связанном текстовом компоненте.- Параметры:
-
child- дочернее представление -
width- true, если предпочтение по ширине изменилось -
height- true, если предпочтение по высоте изменилось - См. также:
getAlignment
public float getAlignment(int axis)
- Параметры:
-
axis- может быть либоView.X_AXIS, либоView.Y_AXIS - Возвращает:
- значение 0.5
paint
public abstract void paint(Graphics g, Shape allocation)
- Параметры:
-
g- поверхность рендеринга для использования -
allocation- выделенная область для отображения
setParent
public void setParent(View parent)
super.setParent() должен быть вызван.- Параметры:
-
parent- новый родитель илиnull, если представление удаляется из родителя
getViewCount
public int getViewCount()
- Возвращает:
- количество представлений >= 0
- См. также:
getView
public View getView(int n)
null.- Параметры:
-
n- номер представления для получения, >= 0 && < getViewCount() - Возвращает:
- представление
removeAll
public void removeAll()
replace.- С:
- 1.3
remove
public void remove(int i)
replace.- Параметры:
-
i- позиция - С:
- 1.3
insert
public void insert(int offs, View v)
replace.- Параметры:
-
offs- смещение представления для вставки перед >= 0 -
v- представление - С:
- 1.3
- См. также:
append
public void append(View v)
replace.- Parameters:
-
v- вид - Since:
- 1.3
- See Also:
replace
public void replace(int offset, int length, View[] views)
null, и внутренняя ссылка на них будет удалена, чтобы их можно было собрать сборщиком мусора. Эта реализация ничего не делает, потому что по умолчанию представление не имеет дочерних элементов.- Parameters:
-
offset- начальный индекс в дочерних представлениях для вставки новых представлений. Это должно быть значение >= 0 и <= getViewCount -
length- количество существующих дочерних представлений для удаления. Это должно быть значение >= 0 и <= (getViewCount() - offset). -
views- дочерние представления для добавления. Это значение может бытьnullдля обозначения отсутствия добавляемых представлений (полезно для удаления). - Since:
- 1.3
getViewIndex
public int getViewIndex(int pos, Position.Bias b)
- Parameters:
-
pos- позиция >= 0 -
b- смещение - Returns:
- индекс представления, представляющего заданную позицию, или -1, если ни одно представление не представляет эту позицию
- Since:
- 1.3
getChildAllocation
public Shape getChildAllocation(int index, Shape a)
null, так как по умолчанию дочерних представлений нет.- Parameters:
-
index- индекс дочернего элемента, >= 0 && <getViewCount() -
a- выделение для этого представления - Returns:
- выделение для дочернего элемента
getNextVisualPositionFrom
public int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) throws BadLocationException
BadLocationException.- Parameters:
-
pos- позиция для преобразования -
b- смещение -
a- выделенная область для отрисовки -
direction- направление от текущей позиции, которое можно представить как клавиши со стрелками, обычно встречающиеся на клавиатуре. Это будет одно из следующих значений:- SwingConstants.WEST
- SwingConstants.EAST
- SwingConstants.NORTH
- SwingConstants.SOUTH
-
biasRet- возвращаемое смещение - Returns:
- позиция в модели, которая лучше всего представляет следующую визуальную позицию
- Throws:
-
BadLocationException- заданная позиция не является допустимой позицией в документе -
IllegalArgumentException- еслиdirectionне имеет одного из приведенных выше допустимых значений
modelToView
public abstract Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException
- Parameters:
-
pos- позиция желаемого символа (>=0) -
a- область представления, которая включает запрашиваемый символ -
b- смещение к предыдущему символу или следующему символу, представленному смещением, в случае, если позиция является границей двух представлений;bбудет иметь одно из этих значений:-
Position.Bias.Forward -
Position.Bias.Backward
-
- Returns:
- прямоугольник, в пространстве координат представления, символа в указанной позиции
- Throws:
-
BadLocationException- если указанная позиция не представляет допустимое местоположение в связанном документе -
IllegalArgumentException- еслиbне является одним из допустимыхPosition.Biasзначений, перечисленных выше - See Also:
modelToView
public Shape modelToView(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a) throws BadLocationException
- Parameters:
-
p0- позиция первого символа (>=0) -
b0- смещение первой позиции символа, к предыдущему символу или следующему символу, представленному смещением, в случае, если позиция является границей двух представлений;b0будет иметь одно из этих значений:-
Position.Bias.Forward -
Position.Bias.Backward
-
-
p1- позиция последнего символа (>=0) -
b1- смещение для второй позиции символа, определенное одним из допустимых значений, показанных выше -
a- область представления, которая включает запрашиваемый диапазон - Returns:
- прямоугольник, являющийся объединением области, заданной позициями первого и последнего символов
- Throws:
-
BadLocationException- если заданная позиция не представляет допустимое местоположение в связанном документе -
IllegalArgumentException- еслиb0илиb1не являются одним из допустимыхPosition.Biasзначений, перечисленных выше - See Also:
viewToModel
public abstract int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)
biasReturn будет заполнен, чтобы указать, что заданная точка ближе к следующему символу в модели или к предыдущему символу в модели.- Parameters:
-
x- координата X >= 0 -
y- координата Y >= 0 -
a- выделенная область для отрисовки -
biasReturn- возвращаемое смещение - Returns:
- местоположение в модели, которое лучше всего представляет заданную точку в представлении >= 0. Аргумент
biasReturnбудет заполнен, чтобы указать, что заданная точка ближе к следующему символу в модели или к предыдущему символу в модели.
insertUpdate
public void insertUpdate(DocumentEvent e, Shape a, ViewFactory f)
-
updateChildrenвызывается, если были изменения в элементе, за который это представление отвечает. Если у этого представления есть дочерние представления, которые представляют дочерние элементы, то этот метод должен сделать все необходимое, чтобы убедиться, что дочерние представления правильно представляют модель. -
forwardUpdateвызывается для передачи DocumentEvent соответствующим дочерним представлениям. -
updateLayoutвызывается, чтобы дать представлению возможность либо исправить свой макет, перепланировать макет, либо ничего не делать.
- Parameters:
-
e- информация об изменениях из связанного документа -
a- текущее выделение представления -
f- фабрика для использования для перестройки, если представление имеет дочерние элементы - See Also:
removeUpdate
public void removeUpdate(DocumentEvent e, Shape a, ViewFactory f)
-
updateChildrenвызывается, если произошли какие-либо изменения в элементе, за который отвечает этот вид. Если у этого вида есть дочерние виды, представляющие дочерние элементы, то этот метод должен выполнить необходимые действия, чтобы убедиться, что дочерние виды правильно представляют модель. -
forwardUpdateвызывается для передачи DocumentEvent соответствующим дочерним видам. -
updateLayoutвызывается, чтобы предоставить виду возможность либо исправить его макет, перепланировать макет, либо ничего не делать.
- Parameters:
-
e- информация о изменении из связанного документа -
a- текущее размещение вида -
f- фабрика, используемая для перестроения, если вид имеет дочерние элементы - See Also:
changedUpdate
public void changedUpdate(DocumentEvent e, Shape a, ViewFactory f)
-
updateChildrenвызывается, если произошли какие-либо изменения в элементе, за который отвечает этот вид. Если у этого вида есть дочерние виды, представляющие дочерние элементы, то этот метод должен выполнить необходимые действия, чтобы убедиться, что дочерние виды правильно представляют модель. -
forwardUpdateвызывается для передачи DocumentEvent соответствующим дочерним видам. -
updateLayoutвызывается, чтобы предоставить виду возможность либо исправить его макет, перепланировать макет, либо ничего не делать.
- Parameters:
-
e- информация о изменении из связанного документа -
a- текущее размещение вида -
f- фабрика, используемая для перестроения, если вид имеет дочерние элементы - See Also:
getDocument
public Document getDocument()
- Returns:
- модель вида,
nullесли нет - See Also:
getStartOffset
public int getStartOffset()
- Returns:
- начальный смещение в модели >= 0
- See Also:
getEndOffset
public int getEndOffset()
- Returns:
- конечное смещение в модели >= 0
- See Also:
getElement
public Element getElement()
- Returns:
- объект
- See Also:
getGraphics
public Graphics getGraphics()
Graphics для отрисовки. Это можно использовать для определения характеристик шрифта, и оно будет отличаться для печати, чем для виджета.- Returns:
- объект
Graphicsдля отрисовки - Since:
- 1.3
getAttributes
public AttributeSet getAttributes()
AttributeSet возвращаемый этим методом.- Returns:
- атрибуты, используемые при отрисовке
breakView
public View breakView(int axis, int offset, float pos, float len)
Этот метод реализован для возврата самого вида, что представляет собой поведение по умолчанию для неразбиваемых видов. Если вид поддерживает разбиение, начальное смещение возвращаемого вида должно быть заданным смещением, а конечное смещение должно быть меньше или равно конечному смещению разбиваемого вида.
- Parameters:
-
axis- может быть либоView.X_AXISилиView.Y_AXIS -
offset- положение в модели документа, которое будет занимать фрагмент разбиения >= 0. Это будет начальное смещение возвращаемого фрагмента -
pos- положение вдоль оси, которое будет занимать разбитый вид >= 0. Это может быть полезно для расчетов табуляции -
len- указывает расстояние вдоль оси, где желательно потенциальное разбиение >= 0 - Returns:
- фрагмент вида, представляющий заданный диапазон, если вид может быть разбит. Если вид не поддерживает поведение разбиения, возвращается сам вид.
- See Also:
createFragment
public View createFragment(int p0, int p1)
- Parameters:
-
p0- начальное смещение >= 0. Это должно быть значение, большее или равное начальному смещению элемента и меньше конечного смещения элемента. -
p1- конечное смещение > p0. Это должно быть значение, меньшее или равное конечному смещению элемента и большее начального смещения элемента. - Returns:
- фрагмент вида или сам вид, если вид не поддерживает фрагментацию
- See Also:
getBreakWeight
public int getBreakWeight(int axis, float pos, float len)
breakView в процессе форматирования. Вид, представляющий текст, содержащий пробелы, может быть более привлекательным, чем вид без пробелов, например. Чем выше вес, тем более привлекательно разбиение. Значение, равное или меньшее BadBreakWeight, не должно рассматриваться для разбиения. Значение, большее или равное ForcedBreakWeight, должно быть разделено. Этот метод реализован для предоставления поведения по умолчанию, возвращающего BadBreakWeight, если длина больше длины вида, в этом случае весь вид представляет фрагмент. Если вид не был написан для поддержки поведения разбиения, разбиение вида не привлекательно. Пример вида, который поддерживает разбиение, — LabelView. Пример вида, использующего вес разбиения, — ParagraphView.
- Parameters:
-
axis- может быть либоView.X_AXISилиView.Y_AXIS -
pos- потенциальное место начала разбитого вида >= 0. Это может быть полезно для расчета позиций табуляции -
len- задает относительную длину от pos, где желательно потенциальное разбиение >= 0 - Returns:
- вес, который должен быть значением между ForcedBreakWeight и BadBreakWeight
- See Also:
getResizeWeight
public int getResizeWeight(int axis)
- Parameters:
-
axis- может быть либоView.X_AXISилиView.Y_AXIS - Returns:
- вес
setSize
public void setSize(float width, float height)
- Parameters:
-
width- ширина >= 0 -
height- высота >= 0
getContainer
public Container getContainer()
- Returns:
- контейнер,
nullесли отсутствует
getViewFactory
public ViewFactory getViewFactory()
ViewFactory, которая питает иерархию представлений. Обычно представлениям передается это в качестве аргумента при обновлениях от модели, когда они, скорее всего, будут нуждаться в фабрике, но этот метод позволяет получить его в другое время.- Returns:
- фабрика,
nullесли отсутствует
getToolTipText
public String getToolTipText(float x, float y, Shape allocation)
- Parameters:
-
x- координата x -
y- координата y -
allocation- текущее выделение представления. - Returns:
- текст подсказки в указанном месте
- Since:
- 1.4
- See Also:
getViewIndex
public int getViewIndex(float x, float y, Shape allocation)
x, y.- Parameters:
-
x- координата x -
y- координата y -
allocation- текущее выделение представления. - Returns:
- индекс представления, представляющего данное местоположение, или -1, если такое представление отсутствует
- Since:
- 1.4
updateChildren
protected boolean updateChildren(DocumentEvent.ElementChange ec, DocumentEvent e, ViewFactory f)
ViewFactory используется для создания дочерних представлений для каждого элемента, указанного как добавленный в ElementChange, начиная с индекса, указанного в данном ElementChange. Количество дочерних представлений, представляющих удалённые элементы, удаляется.- Parameters:
-
ec- информация о изменении для элемента, за который отвечает это представление. Этот параметр не должен бытьnullесли вызывается этот метод -
e- информация о изменении из связанного документа -
f- фабрика, используемая для построения дочерних представлений - Returns:
- указывает, соответствуют ли дочерние представления дочерним элементам элемента, за который отвечает это представление. Некоторые представления создают дочерние элементы, которые представляют часть элемента, за который они отвечают, и должны возвращать false. Эта информация используется для определения, должны ли представления в диапазоне добавленных элементов быть перенаправлены или нет
- Since:
- 1.3
- See Also:
forwardUpdate
protected void forwardUpdate(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a, ViewFactory f)
DocumentEvent дочерним представлениям, которые должны быть уведомлены об изменении модели. Если были изменения в элементе, за который отвечает это представление, это должно быть учтено при пересылке (т. е. новые дочерние представления не должны уведомляться).- Parameters:
-
ec- изменения в элементе, за который отвечает это представление (может бытьnullесли изменений не было). -
e- информация о изменении из связанного документа -
a- текущее выделение представления -
f- фабрика, используемая для перестроения, если у представления есть дочерние элементы - Since:
- 1.3
- See Also:
forwardUpdateToView
protected void forwardUpdateToView(View v, DocumentEvent e, Shape a, ViewFactory f)
DocumentEvent заданному дочернему представлению. Это просто отправляет сообщение представлению с вызовом insertUpdate, removeUpdate, или changedUpdate в зависимости от типа события. Это вызывается методом forwardUpdate для пересылки события дочерним элементам, которые нуждаются в этом.- Parameters:
-
v- дочернее представление, которому передаётся событие -
e- информация о изменении из связанного документа -
a- текущее выделение представления -
f- фабрика, используемая для перестроения, если у представления есть дочерние элементы - Since:
- 1.3
- See Also:
updateLayout
protected void updateLayout(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a)
preferenceChanged для повторного планирования нового макета, если запись ElementChange не null.- Parameters:
-
ec- изменения в элементе, за который отвечает это представление (может бытьnullесли изменений не было) -
e- информация о изменении из связанного документа -
a- текущее выделение представления - Since:
- 1.3
- See Also:
modelToView
@Deprecated public Shape modelToView(int pos, Shape a) throws BadLocationException
Position.Bias.Forward, что ранее подразумевалось.- Parameters:
-
pos- позиция для преобразования >= 0 -
a- выделенная область для отрисовки - Returns:
- возвращается область, содержащая заданную позицию
- Throws:
-
BadLocationException- если заданная позиция не соответствует допустимому местоположению в связанном документе - See Also:
viewToModel
@Deprecated public int viewToModel(float x, float y, Shape a)
- Parameters:
-
x- координата X >= 0 -
y- координата Y >= 0 -
a- выделенная область для отрисовки - Returns:
- местоположение в модели, которое лучше всего представляет данную точку в представлении >= 0
- See Also:
© 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/View.html