Spec-Zone.ru › OpenJDK 24

Интерфейс Caret

Все известные реализующие классы:
BasicTextUI.BasicCaret, DefaultCaret
public interface Caret
Место в представлении документа, которое обозначает, куда можно вставить элементы в модель документа. У курсора есть позиция в документе, называемая точкой. Точка — это текущее местоположение курсора в модели. Курсор также сохраняет вторую позицию, представляющую другой конец выделения, называемую меткой. Если выделения нет, точка и метка будут равны. Если выделение есть, эти значения будут отличаться.

Точку можно установить, вызвав setDot или moveDot. Установка точки приводит к удалению любого ранее существовавшего выделения. Точка и метка будут равны. Перемещение точки приводит к созданию выделения, поскольку метка остается на предыдущей позиции.

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

Модификатор и тип Метод Описание
void addChangeListener(ChangeListener l)
Добавляет слушателя для отслеживания изменений позиции курсора.
void deinstall(JTextComponent c)
Вызывается при удалении пользовательского интерфейса из интерфейса JTextComponent.
int getBlinkRate()
Получает скорость мигания курсора.
int getDot()
Получает текущую позицию курсора.
Point getMagicCaretPosition()
Получает текущее визуальное расположение курсора.
int getMark()
Получает текущую позицию метки.
void install(JTextComponent c)
Вызывается при установке пользовательского интерфейса в интерфейс JTextComponent.
boolean isSelectionVisible()
Определяет, видимым ли является выделение в данный момент.
boolean isVisible()
Определяет, виден ли курсор в данный момент.
void moveDot(int dot)
Перемещает позицию курсора (точку) в другое место, оставляя метку на месте.
void paint(Graphics g)
Отображает курсор.
void removeChangeListener(ChangeListener l)
Удаляет слушателя, который отслеживал изменения позиции курсора.
void setBlinkRate(int rate)
Устанавливает скорость мигания курсора.
void setDot(int dot)
Устанавливает позицию курсора в заданное положение.
void setMagicCaretPosition(Point p)
Устанавливает текущее визуальное расположение курсора.
void setSelectionVisible(boolean v)
Устанавливает видимость выделения
void setVisible(boolean v)
Устанавливает видимость курсора.

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

install

void install(JTextComponent c)
Вызывается при установке пользовательского интерфейса в интерфейс JTextComponent. Это позволяет получить доступ к модели, по которой перемещается реализация данного интерфейса.
Параметры:
c - JTextComponent

deinstall

void deinstall(JTextComponent c)
Вызывается при удалении пользовательского интерфейса из интерфейса JTextComponent. Используется для отмены регистрации подключенных слушателей.
Параметры:
c - JTextComponent

paint

void paint(Graphics g)
Отображает курсор. Этот метод вызывается классами UI.
Параметры:
g - контекст графики

addChangeListener

void addChangeListener(ChangeListener l)
Добавляет слушателя для отслеживания изменений позиции курсора.
Параметры:
l - слушатель изменений

removeChangeListener

void removeChangeListener(ChangeListener l)
Удаляет слушателя, который отслеживал изменения позиции курсора.
Параметры:
l - слушатель изменений

isVisible

boolean isVisible()
Определяет, виден ли курсор в данный момент.
Возвращает:
true, если курсор виден, иначе false

setVisible

void setVisible(boolean v)
Устанавливает видимость курсора.
Параметры:
v - true, если курсор должен быть показан, и false, если курсор должен быть скрыт

isSelectionVisible

boolean isSelectionVisible()
Определяет, видимым ли является выделение в данный момент.
Возвращает:
true, если выделение видно, иначе false

setSelectionVisible

void setSelectionVisible(boolean v)
Устанавливает видимость выделения
Параметры:
v - true, если выделение должно быть показано, и false, если выделение должно быть скрыто

setMagicCaretPosition

void setMagicCaretPosition(Point p)
Устанавливает текущее визуальное расположение курсора. Это может быть использовано при перемещении между строками, которые имеют неравные конечные позиции (например, при выполнении действий вверх или вниз по курсору). Если текст отображается слева направо или справа налево, координата x укажет желаемое местоположение для вертикального перемещения. Если текст отображается сверху вниз, координата y укажет желаемое местоположение для горизонтального перемещения.
Параметры:
p - Point для сохранённой позиции. Может быть null, чтобы указать отсутствие визуального расположения.

getMagicCaretPosition

Point getMagicCaretPosition()
Получает текущее визуальное расположение курсора.
Возвращает:
визуальное расположение.
См. также:
  • setMagicCaretPosition(java.awt.Point)

setBlinkRate

void setBlinkRate(int rate)
Устанавливает скорость мигания курсора. Это определяет, мигает ли курсор и с какой скоростью, часто используется для привлечения внимания к курсору.
Параметры:
rate - задержка в миллисекундах >=0. Если это ноль, курсор не будет мигать.

getBlinkRate

int getBlinkRate()
Получает скорость мигания курсора. Это определяет, мигает ли курсор и с какой скоростью, часто используется для привлечения внимания к курсору.
Возвращает:
задержка в миллисекундах >=0. Если это ноль, курсор не будет мигать.

getDot

int getDot()
Получает текущую позицию курсора.
Возвращает:
позиция >=0

getMark

int getMark()
Получает текущую позицию метки. Если выделение есть, метка не будет равна точке.
Возвращает:
позиция >=0

setDot

void setDot(int dot)
Устанавливает позицию курсора в заданное положение. Это заставляет метку стать такой же, как и точка, эффективно устанавливая диапазон выделения в ноль.

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

Параметры:
dot - новая позиция для установки курсора

moveDot

void moveDot(int dot)
Перемещает позицию курсора (точку) в другое место, оставляя метку на месте. Это полезно для создания выделений.
Параметры:
dot - новая позиция для перемещения курсора >=0

© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/text/Caret.html

Spec-Zone.ru

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