Spec-Zone.ru › OpenJDK 17

Класс DefaultCaret

java.lang.Object
java.awt.geom.RectangularShape
java.awt.geom.Rectangle2D
java.awt.Rectangle
javax.swing.text.DefaultCaret
Все реализуемые интерфейсы:
FocusListener, MouseListener, MouseMotionListener, Shape, Serializable, Cloneable, EventListener, Caret
Прямые известные подклассы:
BasicTextUI.BasicCaret
public class DefaultCaret extends Rectangle implements Caret, FocusListener, MouseListener, MouseMotionListener
Реализация по умолчанию для Caret. Курсор отображается как вертикальная линия в цвете, заданном свойством CaretColor связанного JTextComponent. Он может мигать со скоростью, заданной свойством BlinkRate.

Эта реализация ожидает двух источников асинхронного уведомления. Поток таймера генерирует асинхронные события, заставляя курсор просто перерисовывать последнюю область. Курсор также отслеживает изменения, происходящие при модификации документа. Обычно это происходит в потоке обработки событий в результате какого-либо события мыши или клавиатуры. Поведение курсора при синхронных и асинхронных обновлениях документа контролируется свойством UpdatePolicy. Перерисовка нового расположения курсора произойдет в потоке обработки событий в любом случае, так как вызовы modelToView безопасны только в потоке обработки событий.

Курсор действует как слушатель мыши и фокуса на текстовом компоненте, в котором он установлен, и определяет семантику курсора на основе этих событий. Методы слушателей можно переопределить для изменения семантики. По умолчанию первая кнопка мыши используется для установки фокуса и позиции курсора. Перетаскивание указателя мыши с первой кнопкой мыши создаст непрерывный выделенный диапазон в модели. Если связанный текстовый компонент редактируемый, курсор станет видимым при получении фокуса и невидимым при его потере.

По умолчанию для отрисовки выделения используется Highlighter, связанный со связанным текстовым компонентом. Внешний вид выделения можно настроить, указав painter для использования в выделении. По умолчанию используется painter, который отрисует сплошной цвет, заданный в связанном текстовом компоненте в свойстве SelectionColor. Это легко изменить, переопределив метод getSelectionPainter.

Настраиваемое отображение курсора можно получить, переопределив метод paint. Если метод paint изменен, метод damage также должен быть переопределен, чтобы вызвать перерисовку необходимой области для отрисовки курсора. Курсор расширяет класс Rectangle, который используется для хранения области, в которой курсор был последний раз отрисован. Это позволяет курсору перерисовываться потокобезопасным образом при перемещении без вызова modelToView, который нестабилен между обновлениями модели и исправлением представления (т. е. порядок доставки DocumentListeners не гарантируется).

Магическая позиция курсора устанавливается в null при изменении позиции курсора. Таймер используется для определения нового расположения (после изменения курсора). Когда таймер срабатывает, если магическая позиция курсора по-прежнему null, она устанавливается в текущую позицию курсора. Любые действия, которые изменяют позицию курсора и хотят, чтобы магическая позиция курсора осталась прежней, должны сохранить магическую позицию курсора, изменить курсор, а затем установить магическую позицию курсора в исходное значение. Это дает преимущество, что только те действия, которые хотят сохранить магическую позицию курсора (такие как открытие/вниз), должны знать о ней.

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans была добавлена в пакет java.beans. См. XMLEncoder.

См. также:
  • Caret

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в классе java.awt.geom.Rectangle2D

Rectangle2D.Double, Rectangle2D.Float

Краткое описание полей

Модификатор и тип Поле Описание
static final int ALWAYS_UPDATE
Указывает, что позиция курсора должна всегда обновляться в соответствии с изменениями документа независимо от того, выполняются ли обновления документа в потоке обработки событий или нет.
protected ChangeEvent changeEvent
Событие изменения модели.
protected EventListenerList listenerList
Список слушателей событий.
static final int NEVER_UPDATE
Указывает, что курсор должен оставаться в той же абсолютной позиции в документе независимо от любых обновлений документа, за исключением случаев, когда длина документа становится меньше текущей позиции курсора из-за удаления.
static final int UPDATE_WHEN_ON_EDT
Указывает, что позиция курсора должна обновляться только при изменениях документа, выполняемых в потоке обработки событий.

Поля, объявленные в классе java.awt.Rectangle

height, width, x, y

Поля, объявленные в классе java.awt.geom.Rectangle2D

OUT_BOTTOM, OUT_LEFT, OUT_RIGHT, OUT_TOP

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

Конструктор Описание
DefaultCaret()
Создает курсор по умолчанию.

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

Модификатор и тип Метод Описание
void addChangeListener(ChangeListener l)
Добавляет обработчик для отслеживания изменений позиции курсора.
protected void adjustVisibility(Rectangle nloc)
Прокручивает связанное представление (при необходимости), чтобы сделать курсор видимым.
protected void damage(Rectangle r)
Повреждает область вокруг курсора, чтобы перерисовать его в новом месте.
void deinstall(JTextComponent c)
Вызывается при удалении пользовательского интерфейса из интерфейса JTextComponent.
boolean equals(Object obj)
Сравнивает этот объект с указанным объектом.
protected void fireStateChanged()
Уведомляет всех слушателей, которые зарегистрировали интерес к уведомлениям об этом типе события.
void focusGained(FocusEvent e)
Вызывается, когда компонент, содержащий курсор, получает фокус.
void focusLost(FocusEvent e)
Вызывается, когда компонент, содержащий курсор, теряет фокус.
int getBlinkRate()
Получает скорость мигания курсора.
ChangeListener[] getChangeListeners()
Возвращает массив всех слушателей изменений, зарегистрированных на этом курсоре.
protected final JTextComponent getComponent()
Получает компонент текстового редактора, к которому привязан этот курсор.
int getDot()
Получает текущую позицию курсора.
Position.Bias getDotBias()
Возвращает смещение позиции курсора.
<T extends EventListener>
T[]
getListeners(Class<T> listenerType)
Возвращает массив всех объектов, в настоящее время зарегистрированных как FooListener для этого курсора.
Point getMagicCaretPosition()
Получает сохраненную позицию курсора.
int getMark()
Получает текущую позицию метки.
Position.Bias getMarkBias()
Возвращает смещение метки.
protected Highlighter.HighlightPainter getSelectionPainter()
Получает рисовальщик для выделения.
int getUpdatePolicy()
Получает политику перемещения курсора при обновлениях документа.
void install(JTextComponent c)
Вызывается при установке пользовательского интерфейса в интерфейс JTextComponent.
boolean isActive()
Определяет, активен ли в данный момент курсор.
boolean isSelectionVisible()
Проверяет, виден ли текущий выделенный фрагмент.
boolean isVisible()
Указывает, виден ли в данный момент курсор.
void mouseClicked(MouseEvent e)
Вызывается при щелчке мышью.
void mouseDragged(MouseEvent e)
Перемещает позицию курсора в соответствии с текущим положением указателя мыши.
void mouseEntered(MouseEvent e)
Вызывается при входе мыши в область.
void mouseExited(MouseEvent e)
Вызывается при выходе мыши из области.
void mouseMoved(MouseEvent e)
Вызывается при перемещении мыши.
void mousePressed(MouseEvent e)
Если нажата кнопка 1, это выполняется для запроса фокуса на связанном текстовом компоненте и для установки позиции курсора.
void mouseReleased(MouseEvent e)
Вызывается при отпускании кнопки мыши.
protected void moveCaret(MouseEvent e)
Пытается переместить позицию курсора из координат события мыши, используя viewToModel().
void moveDot(int dot)
Перемещает позицию курсора в указанную позицию со смещением вперёд.
void moveDot(int dot, Position.Bias dotBias)
Перемещает позицию курсора в указанную позицию со заданным смещением.
void paint(Graphics g)
Отображает курсор в виде вертикальной линии.
protected void positionCaret(MouseEvent e)
Пытается установить позицию курсора из координат события мыши, используя viewToModel().
void removeChangeListener(ChangeListener l)
Удаляет обработчик, который отслеживал изменения позиции курсора.
protected final void repaint()
Перерисовывает курсор.
void setBlinkRate(int rate)
Устанавливает скорость мигания курсора.
void setDot(int dot)
Устанавливает позицию курсора и метки в указанную позицию со смещением вперёд.
void setDot(int dot, Position.Bias dotBias)
Устанавливает позицию курсора и метки в указанную позицию со заданным смещением.
void setMagicCaretPosition(Point p)
Сохраняет текущую позицию курсора.
void setSelectionVisible(boolean vis)
Изменяет видимость выделения.
void setUpdatePolicy(int policy)
Устанавливает политику перемещения курсора при обновлениях документа.
void setVisible(boolean e)
Устанавливает видимость курсора и перерисовывает его.

Методы, объявленные в классе java.awt.Rectangle

add, add, add, contains, contains, contains, contains, createIntersection, createUnion, getBounds, getBounds2D, getHeight, getLocation, getSize, getWidth, getX, getY, grow, inside, intersection, intersects, isEmpty, move, outcode, reshape, resize, setBounds, setBounds, setLocation, setLocation, setRect, setSize, setSize, toString, translate, union

Методы, объявленные в классе java.awt.geom.Rectangle2D

add, add, add, contains, contains, getPathIterator, getPathIterator, hashCode, intersect, intersects, intersectsLine, intersectsLine, outcode, setFrame, setRect, union

Методы, объявленные в классе java.awt.geom.RectangularShape

clone, contains, contains, getCenterX, getCenterY, getFrame, getMaxX, getMaxY, getMinX, getMinY, intersects, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal

Методы, объявленные в классе java.lang.Object

finalize, getClass, notify, notifyAll, wait, wait, wait

Методы, объявленные в интерфейсе java.awt.Shape

contains, contains, contains, contains, getPathIterator, getPathIterator, intersects, intersects

Подробное описание полей

UPDATE_WHEN_ON_EDT

public static final int UPDATE_WHEN_ON_EDT
Указывает, что позиция курсора должна обновляться только при изменении документа на потоке обработки событий.
С момента:
1.5
См. также:
  • setUpdatePolicy(int)
  • getUpdatePolicy()
  • Значения константных полей

NEVER_UPDATE

public static final int NEVER_UPDATE
Указывает, что курсор должен оставаться в той же абсолютной позиции в документе независимо от обновлений документа, за исключением случаев, когда длина документа становится меньше текущей позиции курсора из-за удаления. В этом случае позиция курсора устанавливается в конец документа.
С момента:
1.5
См. также:
  • setUpdatePolicy(int)
  • getUpdatePolicy()
  • Значения константных полей

ALWAYS_UPDATE

public static final int ALWAYS_UPDATE
Указывает, что позиция курсора должна всегда обновляться в соответствии с изменениями документа, независимо от того, выполняются ли обновления документа на потоке обработки событий или нет.
С момента:
1.5
См. также:
  • setUpdatePolicy(int)
  • getUpdatePolicy()
  • Значения константных полей

listenerList

protected EventListenerList listenerList
Список слушателей событий.

changeEvent

protected transient ChangeEvent changeEvent
Событие изменения для модели. Один объект ChangeEvent нужен на каждый экземпляр модели, так как единственное (только для чтения) состояние события — свойство source. Источником событий, генерируемых здесь, всегда является «this».

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

DefaultCaret

public DefaultCaret()
Создаёт стандартный курсор.

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

setUpdatePolicy

public void setUpdatePolicy(int policy)
Устанавливает политику перемещения курсора при обновлении документа. Обычно курсор обновляет своё абсолютное положение в документе при вставках, происходящих перед или в позиции курсора, и при удалениях перед позицией курсора. «Абсолютное положение» здесь означает положение относительно начала документа. Например, если символ набирается в редактируемом текстовом компоненте, он вставляется в позицию курсора, а курсор перемещается в следующее абсолютное положение в документе из-за вставки; и если BACKSPACE набрано, курсор уменьшает своё абсолютное положение из-за удаления символа перед ним. Иногда может быть полезно отключить обновления позиции курсора, чтобы курсор оставался в той же абсолютной позиции в документе независимо от обновлений.

Разрешены следующие политики обновления:

  • NEVER_UPDATE: курсор остаётся в той же абсолютной позиции в документе независимо от обновлений документа, за исключением случаев, когда длина документа становится меньше текущей позиции курсора из-за удаления. В этом случае позиция курсора устанавливается в конец документа. Курсор не пытается сохранить видимость, прокручивая связанный вид при использовании этой политики.
  • ALWAYS_UPDATE: курсор всегда отслеживает изменения документа. При обычных изменениях он увеличивает своё положение, если вставка происходит перед или в его текущей позиции, и уменьшает положение, если удаление происходит перед его текущей позицией. При обновлениях отмены/повтор курсор всегда перемещается в позицию, где произошло обновление. Курсор также пытается сохранить свою видимость, вызывая метод adjustVisibility.
  • UPDATE_WHEN_ON_EDT: действует как ALWAYS_UPDATE, если обновления документа выполняются на потоке обработки событий, и как NEVER_UPDATE, если обновления выполняются на другом потоке.

Значение по умолчанию — UPDATE_WHEN_ON_EDT.

Параметры:
policy - одно из следующих значений: UPDATE_WHEN_ON_EDT, NEVER_UPDATE, ALWAYS_UPDATE
Исключения:
IllegalArgumentException - если передано недопустимое значение
С момента:
1.5
См. также:
  • getUpdatePolicy()
  • adjustVisibility(java.awt.Rectangle)
  • UPDATE_WHEN_ON_EDT
  • NEVER_UPDATE
  • ALWAYS_UPDATE

getUpdatePolicy

public int getUpdatePolicy()
Получает политику перемещения курсора при обновлениях документа.
Возвращает:
одно из следующих значений: UPDATE_WHEN_ON_EDT, NEVER_UPDATE, ALWAYS_UPDATE
С момента:
1.5
См. также:
  • setUpdatePolicy(int)
  • UPDATE_WHEN_ON_EDT
  • NEVER_UPDATE
  • ALWAYS_UPDATE

getComponent

protected final JTextComponent getComponent()
Получает компонент текстового редактора, к которому привязан этот курсор.
Возвращает:
компонент

repaint

protected final void repaint()
Принудительно перерисовать курсор. Область перерисовки — прямоугольник, содержащий курсор (т.е. прямоугольник курсора или this).

Этот метод потокобезопасен, хотя большинство методов Swing не являются таковыми. Дополнительную информацию см. в Concurrency in Swing.

damage

protected void damage(Rectangle r)
Повреждает область вокруг курсора, чтобы вызвать его перерисовку в новом месте. Если метод paint() переопределён, следует переопределить и этот метод. Этот метод должен обновить границы курсора (x, y, ширина и высота).
Параметры:
r - текущее положение курсора
См. также:
  • paint(java.awt.Graphics)

adjustVisibility

protected void adjustVisibility(Rectangle nloc)
Прокручивает связанный вид (при необходимости), чтобы сделать курсор видимым. Так как способ, которым это должно быть сделано, является некоторой политикой, этот метод может быть переопределён для изменения поведения. По умолчанию вызывается метод scrollRectToVisible на связанном компоненте.
Параметры:
nloc - новое положение для прокрутки

getSelectionPainter

protected Highlighter.HighlightPainter getSelectionPainter()
Возвращает рисовальщик для Highlighter.
Возвращает:
рисовальщик

positionCaret

protected void positionCaret(MouseEvent e)
Пытается установить позицию курсора по координатам события мыши, используя viewToModel().
Параметры:
e - событие мыши

moveCaret

protected void moveCaret(MouseEvent e)
Пытается переместить позицию курсора по координатам события мыши, используя viewToModel(). Это вызовет выделение, если точка и метка отличаются.
Параметры:
e - событие мыши

focusGained

public void focusGained(FocusEvent e)
Вызывается, когда компонент, содержащий курсор, получает фокус. Этот метод реализован для того, чтобы сделать курсор видимым, если компонент редактируемый.
Определено в:
focusGained в интерфейсе FocusListener
Параметры:
e - событие получения фокуса
См. также:
  • FocusListener.focusGained(java.awt.event.FocusEvent)

focusLost

public void focusLost(FocusEvent e)
Вызывается, когда компонент, содержащий курсор, теряет фокус. Этот метод реализован для того, чтобы установить видимость курсора в false.
Определено в:
focusLost в интерфейсе FocusListener
Параметры:
e - событие потери фокуса
См. также:
  • FocusListener.focusLost(java.awt.event.FocusEvent)

mouseClicked

public void mouseClicked(MouseEvent e)
Вызывается при щелчке мышью. Если щелчок был вызван кнопкой 1, двойной щелчок выделяет слово, а тройной щелчок - текущую строку.
Определено в:
mouseClicked в интерфейсе MouseListener
Параметры:
e - событие щелчка мышью
См. также:
  • MouseListener.mouseClicked(java.awt.event.MouseEvent)

mousePressed

public void mousePressed(MouseEvent e)
Если нажата кнопка 1, это реализуется для запроса фокуса на связанном текстовом компоненте и для установки позиции курсора. Если удерживается клавиша Shift, позиция курсора будет перемещена, что может привести к выделению, в противном случае позиция курсора будет установлена в новом месте. Если компонент не активен, запрос фокуса не будет выполнен.
Specified by:
mousePressed в интерфейсе MouseListener
Parameters:
e - событие нажатия мыши
See Also:
  • MouseListener.mousePressed(java.awt.event.MouseEvent)

mouseReleased

public void mouseReleased(MouseEvent e)
Вызывается при отпускании кнопки мыши.
Specified by:
mouseReleased в интерфейсе MouseListener
Parameters:
e - событие отпускания мыши
See Also:
  • MouseListener.mouseReleased(java.awt.event.MouseEvent)

mouseEntered

public void mouseEntered(MouseEvent e)
Вызывается при входе мыши в область.
Specified by:
mouseEntered в интерфейсе MouseListener
Parameters:
e - событие входа мыши
See Also:
  • MouseListener.mouseEntered(java.awt.event.MouseEvent)

mouseExited

public void mouseExited(MouseEvent e)
Вызывается при выходе мыши из области.
Specified by:
mouseExited в интерфейсе MouseListener
Parameters:
e - событие выхода мыши
See Also:
  • MouseListener.mouseExited(java.awt.event.MouseEvent)

mouseDragged

public void mouseDragged(MouseEvent e)
Перемещает позицию курсора в соответствии с текущим положением указателя мыши. Это эффективно расширяет выделение. По умолчанию, это делается только для кнопки мыши 1.
Specified by:
mouseDragged в интерфейсе MouseMotionListener
Parameters:
e - событие перетаскивания мыши
See Also:
  • MouseMotionListener.mouseDragged(java.awt.event.MouseEvent)

mouseMoved

public void mouseMoved(MouseEvent e)
Вызывается при перемещении мыши.
Specified by:
mouseMoved в интерфейсе MouseMotionListener
Parameters:
e - событие перемещения мыши
See Also:
  • MouseMotionListener.mouseMoved(java.awt.event.MouseEvent)

paint

public void paint(Graphics g)
Отображает курсор в виде вертикальной линии. Если это переопределено, то метод damage также должен быть переопределён, так как он предполагает, что форма курсора - вертикальная линия. Устанавливает цвет курсора в значение, возвращаемое методом getCaretColor().

Если в связанном документе присутствует несколько направлений текста, будет отображён флаг, указывающий смещение курсора. Это произойдёт только в том случае, если связанный документ является подклассом AbstractDocument и в структуре элемента bidi присутствует несколько уровней bidi (т.е. текст имеет несколько связанных с ним направлений).

Specified by:
paint в интерфейсе Caret
Parameters:
g - контекст графики
See Also:
  • damage(java.awt.Rectangle)

install

public void install(JTextComponent c)
Вызывается при установке пользовательского интерфейса в интерфейс JTextComponent. Это может быть использовано для доступа к модели, которая просматривается реализацией этого интерфейса. Устанавливает точки dot и mark в 0 и устанавливает слушатели документов, изменения свойств, фокуса, мыши и движения мыши.
Specified by:
install в интерфейсе Caret
Parameters:
c - компонент
See Also:
  • Caret.install(javax.swing.text.JTextComponent)

deinstall

public void deinstall(JTextComponent c)
Вызывается при удалении пользовательского интерфейса из интерфейса JTextComponent. Это используется для отмены регистрации любых слушателей, которые были подключены.
Specified by:
deinstall в интерфейсе Caret
Parameters:
c - компонент
See Also:
  • Caret.deinstall(javax.swing.text.JTextComponent)

addChangeListener

public void addChangeListener(ChangeListener l)
Добавляет слушателя для отслеживания изменений позиции курсора.
Specified by:
addChangeListener в интерфейсе Caret
Parameters:
l - слушатель
See Also:
  • Caret.addChangeListener(javax.swing.event.ChangeListener)

removeChangeListener

public void removeChangeListener(ChangeListener l)
Удаляет слушателя, который отслеживал изменения позиции курсора.
Specified by:
removeChangeListener в интерфейсе Caret
Parameters:
l - слушатель
See Also:
  • Caret.removeChangeListener(javax.swing.event.ChangeListener)

getChangeListeners

public ChangeListener[] getChangeListeners()
Возвращает массив всех слушателей изменений, зарегистрированных на этом курсоре.
Returns:
все слушатели изменений этого курсора или пустой массив, если слушатели изменений не зарегистрированы
Since:
1.4
See Also:
  • addChangeListener(javax.swing.event.ChangeListener)
  • removeChangeListener(javax.swing.event.ChangeListener)

fireStateChanged

protected void fireStateChanged()
Уведомляет всех слушателей, которые зарегистрировали интерес к уведомлениям об этом типе события. Экземпляр события создаётся лениво с использованием параметров, переданных в метод fire. Список слушателей обрабатывается последним к первому.
See Also:
  • EventListenerList

getListeners

public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Возвращает массив всех объектов, зарегистрированных в качестве слушателей на этом курсоре. Слушатели регистрируются с помощью метода addFooListener.

Вы можете указать аргумент listenerType с литералом класса, например FooListener.class. Например, вы можете запросить слушателей изменений у DefaultCaret c с помощью следующего кода:

ChangeListener[] cls = (ChangeListener[])(c.getListeners(ChangeListener.class));
Если таких слушателей нет, этот метод возвращает пустой массив.
Type Parameters:
T - тип слушателя
Parameters:
listenerType - тип запрашиваемых слушателей
Returns:
массив всех объектов, зарегистрированных в качестве слушателей на этом компоненте, или пустой массив, если такие слушатели не были добавлены
Throws:
ClassCastException - если listenerType не указывает класс или интерфейс, реализующий java.util.EventListener
Since:
1.3
See Also:
  • getChangeListeners()

setSelectionVisible

public void setSelectionVisible(boolean vis)
Изменяет видимость выделения.
Specified by:
setSelectionVisible в интерфейсе Caret
Parameters:
vis - новая видимость

isSelectionVisible

public boolean isSelectionVisible()
Проверяет, видима ли текущее выделение.
Specified by:
isSelectionVisible в интерфейсе Caret
Returns:
true, если выделение видимо

isActive

public boolean isActive()
Определяет, активен ли курсор в данный момент.

Этот метод возвращает значение, указывающее, находится ли курсор в мигающем состоянии. Он не предоставляет информацию о том, мигает он сейчас или нет. Чтобы определить, окрашивается ли курсор в данный момент, используйте метод isVisible.

Returns:
true если активен, иначе false
Since:
1.5
See Also:
  • isVisible()

isVisible

public boolean isVisible()
Указывает, видима ли в данный момент точка ввода. Поскольку точка ввода мигает, значение этого метода будет меняться между true, когда точка ввода отображается, и false, когда она не отображается. isActive указывает, находится ли точка ввода в мигающем состоянии, так что она может быть видимой, а isVisible указывает, является ли точка ввода фактически видимой.

Подклассы, которые хотят отображать мигающую точку ввода, должны переопределить метод paint и рисовать точку ввода только в том случае, если этот метод возвращает true.

Определено в:
isVisible в интерфейсе Caret
Возвращает:
true, если видима, иначе false
См. также:
  • Caret.isVisible()
  • isActive()

setVisible

public void setVisible(boolean e)
Устанавливает видимость точки ввода и перерисовывает её. Важно понять взаимосвязь между этим методом, isVisible и isActive. Вызов этого метода со значением true активирует мигание точки ввода. Установка значения в false полностью отключает её. Чтобы определить, активен ли мигающий режим, необходимо вызвать isActive. Фактически, isActive является соответствующим методом-«геттером» для этого метода. isVisible может использоваться для получения текущего состояния видимости точки ввода, то есть отображается ли она в данный момент. Это состояние будет меняться по мере мигания точки ввода.

Вот список возможных возвращаемых значений как isActive, так и isVisible после вызова этого метода:

setVisible(true):

  • isActive(): true
  • isVisible(): true или false в зависимости от того, включён или выключен мигающий режим точки ввода

setVisible(false):

  • isActive(): false
  • isVisible(): false
Определено в:
setVisible в интерфейсе Caret
Параметры:
e - спецификатор видимости
См. также:
  • isActive()
  • Caret.setVisible(boolean)

setBlinkRate

public void setBlinkRate(int rate)
Устанавливает скорость мигания точки ввода.
Определено в:
setBlinkRate в интерфейсе Caret
Параметры:
rate - скорость в миллисекундах, 0 для остановки мигания
См. также:
  • Caret.setBlinkRate(int)

getBlinkRate

public int getBlinkRate()
Получает скорость мигания точки ввода.
Определено в:
getBlinkRate в интерфейсе Caret
Возвращает:
задержка в миллисекундах. Если это ноль, точка ввода не будет мигать.
См. также:
  • Caret.getBlinkRate()

getDot

public int getDot()
Получает текущее положение точки ввода.
Определено в:
getDot в интерфейсе Caret
Возвращает:
положение >= 0
См. также:
  • Caret.getDot()

getMark

public int getMark()
Получает текущее положение метки. Если есть выделение, точка и метка будут отличаться.
Определено в:
getMark в интерфейсе Caret
Возвращает:
положение >= 0
См. также:
  • Caret.getMark()

setDot

public void setDot(int dot)
Устанавливает положение точки ввода и метки в указанное положение с предустановкой вперёд. Это неявно устанавливает диапазон выделения в ноль.
Определено в:
setDot в интерфейсе Caret
Параметры:
dot - положение >= 0
См. также:
  • setDot(int, Position.Bias)
  • Caret.setDot(int)

moveDot

public void moveDot(int dot)
Перемещает положение точки ввода в указанное положение с предустановкой вперёд.
Определено в:
moveDot в интерфейсе Caret
Параметры:
dot - положение >= 0
См. также:
  • moveDot(int, javax.swing.text.Position.Bias)
  • Caret.moveDot(int)

moveDot

public void moveDot(int dot, Position.Bias dotBias)
Перемещает положение точки ввода в указанное положение с заданным смещением.
Параметры:
dot - положение >= 0
dotBias - смещение для этого положения, не null
Исключения:
IllegalArgumentException - если смещение null
См. также:
  • Caret.moveDot(int)

setDot

public void setDot(int dot, Position.Bias dotBias)
Устанавливает положение точки ввода и метки в указанное положение с заданным смещением. Это неявно устанавливает диапазон выделения в ноль.
Параметры:
dot - положение >= 0
dotBias - смещение для этого положения, не null
Исключения:
IllegalArgumentException - если смещение null
См. также:
  • Caret.setDot(int)

getDotBias

public Position.Bias getDotBias()
Возвращает смещение положения точки ввода.
Возвращает:
смещение положения точки ввода

getMarkBias

public Position.Bias getMarkBias()
Возвращает смещение метки.
Возвращает:
смещение метки

setMagicCaretPosition

public void setMagicCaretPosition(Point p)
Сохраняет текущее положение точки ввода. Используется при действиях «вверх/вниз по курсору», когда перемещение происходит между строками с неравномерными конечными позициями.
Определено в:
setMagicCaretPosition в интерфейсе Caret
Параметры:
p - положение
См. также:
  • getMagicCaretPosition()

getMagicCaretPosition

public Point getMagicCaretPosition()
Получает сохранённое положение точки ввода.
Определено в:
getMagicCaretPosition в интерфейсе Caret
Возвращает:
положение, см. #setMagicCaretPosition
См. также:
  • Caret.setMagicCaretPosition(java.awt.Point)

equals

public boolean equals(Object obj)
Сравнивает этот объект с заданным объектом. Поведение суперкласса по сравнению прямоугольников нежелательно, поэтому это изменено на поведение объекта.
Переопределяет:
equals в классе Rectangle
Параметры:
obj - объект для сравнения с этим шрифтом
Возвращает:
true если объекты равны; false в противном случае
См. также:
  • Object.hashCode()
  • HashMap

© 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/DefaultCaret.html

Spec-Zone.ru

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