Класс NavigationFilter
java.lang.Object
javax.swing.text.NavigationFilter
public class NavigationFilter extends Object
NavigationFilter может использоваться для ограничения позиции курсора. При попытке изменить позицию курсора стандартные действия перемещения курсора обращаются к NavigationFilter, предполагая, что у JTextComponent установлен непустой NavigationFilter. Таким образом, NavigationFilter эффективно ограничивает возможные позиции курсора. Аналогично, DefaultCaret обращается к NavigationFilter, когда пользователь изменяет выделение, чтобы дополнительно ограничить позицию курсора. Подклассы могут условно вызывать реализацию суперкласса для ограничения позиции курсора или напрямую обращаться к FilterBypass.
- Since:
- 1.4
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
NavigationFilter.FilterBypass |
Используется для того, чтобы обойти вызовы к caret для позиционирования курсора. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
NavigationFilter() |
Создаёт NavigationFilter. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
getNextVisualPositionFrom |
Возвращает следующую визуальную позицию для размещения курсора из существующей позиции. |
void |
moveDot |
Вызывается перед перемещением Caret. |
void |
setDot |
Вызывается перед установлением Caret. |
Подробное описание конструкторов
NavigationFilter
public NavigationFilter()
Создаёт
NavigationFilter.Подробное описание методов
getNextVisualPositionFrom
public int getNextVisualPositionFrom(JTextComponent text, int pos, Position.Bias bias, int direction, Position.Bias[] biasRet) throws BadLocationException
Возвращает следующую визуальную позицию для размещения курсора из существующей позиции. Стандартная реализация просто передаёт метод корневому View. Подклассы могут дополнительно ограничить местоположение на основе дополнительных критериев.
- Параметры:
-
text- JTextComponent, содержащий текст -
pos- Позиция, используемая для определения следующей позиции -
bias- Смещение, используемое для определения следующей позиции -
direction- Направление от текущей позиции, которое можно рассматривать как клавиши со стрелками на клавиатуре. Будет иметь одно из следующих значений:- SwingConstants.WEST
- SwingConstants.EAST
- SwingConstants.NORTH
- SwingConstants.SOUTH
-
biasRet- Используется для возврата результирующего смещения следующей позиции - Возвращает:
- местоположение в модели, которое наилучшим образом представляет следующую визуальную позицию
- Исключения:
-
BadLocationException- для некорректного местоположения в модели документа -
IllegalArgumentException- еслиdirectionне имеет одного из допустимых значений выше
© 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/NavigationFilter.html