Spec-Zone.ru › OpenJDK 21

Интерфейс InputMethodContext

Все суперинтерфейсы:
InputMethodRequests
public interface InputMethodContext extends InputMethodRequests
Предоставляет методы, которые могут использовать методы ввода для связи с их клиентскими компонентами или для запроса других сервисов. Этот интерфейс реализуется фреймворком методов ввода, и методы ввода вызывают его методы на экземпляре, полученном через InputMethod.setInputMethodContext(java.awt.im.spi.InputMethodContext). Не должно быть других реализаторов или вызывающих сторон.
С:
1.3

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

Модификатор и тип Метод Описание
JFrame createInputMethodJFrame(String title, boolean attachToInputContext)
Создаёт верхнеуровневый Swing JFrame для использования методом ввода.
Window createInputMethodWindow(String title, boolean attachToInputContext)
Создаёт верхнеуровневое окно для использования методом ввода.
void dispatchInputMethodEvent(int id, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition)
Создаёт событие метода ввода из заданных аргументов и отправляет его клиентскому компоненту.
void enableClientWindowNotification(InputMethod inputMethod, boolean enable)
Включает или выключает уведомления о местоположении и состоянии текущего клиентского окна для указанного метода ввода.

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

cancelLatestCommittedText, getCommittedText, getCommittedTextLength, getInsertPositionOffset, getLocationOffset, getSelectedText, getTextLocation

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

dispatchInputMethodEvent

void dispatchInputMethodEvent(int id, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition)
Создаёт событие метода ввода из заданных аргументов и отправляет его клиентскому компоненту. Для аргументов см. InputMethodEvent(java.awt.Component, int, java.awt.font.TextHitInfo, java.awt.font.TextHitInfo).
Параметры:
id - тип события
text - объединённый текст подтверждения и композиции
committedCharacterCount - количество подтверждённых символов в тексте
caret - курсор (также точка вставки); null, если нет курсора внутри текущего составленного текста
visiblePosition - позиция, наиболее важная для отображения; null, если нет рекомендации по видимой позиции внутри текущего составленного текста

createInputMethodWindow

Window createInputMethodWindow(String title, boolean attachToInputContext)
Создаёт верхнеуровневое окно для использования методом ввода. Предполагаемое поведение этого окна:
  • оно находится поверх всех окон документов и диалогов
  • оно и все его компоненты не получают фокус
  • у него есть лёгкие украшения, такие как уменьшенная область перетаскивания без заголовка
Однако фактическое поведение по этим трём пунктам зависит от платформы.

Заголовок может отображаться или нет, в зависимости от фактического типа созданного окна.

Если attachToInputContext имеет значение true, новое окно будет использовать контекст ввода, соответствующий этому контексту метода ввода, чтобы события для компонентов в окне автоматически отправлялись методу ввода. Кроме того, при открытии окна с помощью setVisible(true), контекст ввода предотвратит вызовы deactivate и activate методу ввода, которые могут быть вызваны в противном случае.

Методы ввода должны вызвать Window.dispose на возвращённом окне метода ввода, когда оно больше не нужно.

Параметры:
title - заголовок, который должен отображаться в строке заголовка окна, если такая строка заголовка есть. Значение null обрабатывается как пустая строка, "".
attachToInputContext - нужно ли этому окну совместно использовать контекст ввода, соответствующий этому контексту метода ввода
Возвращает:
окно со специальными характеристиками для использования методами ввода
Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless возвращает true

createInputMethodJFrame

JFrame createInputMethodJFrame(String title, boolean attachToInputContext)
Создаёт верхнеуровневый Swing JFrame для использования методом ввода. Предполагаемое поведение этого окна:
  • оно находится поверх всех окон документов и диалогов
  • оно и все его компоненты не получают фокус
  • у него есть лёгкие украшения, такие как уменьшенная область перетаскивания без заголовка
Однако фактическое поведение по этим трём пунктам зависит от платформы.

Заголовок может отображаться или нет, в зависимости от фактического типа созданного окна.

Если attachToInputContext имеет значение true, новое окно будет использовать контекст ввода, соответствующий этому контексту метода ввода, чтобы события для компонентов в окне автоматически отправлялись методу ввода. Кроме того, при открытии окна с помощью setVisible(true), контекст ввода предотвратит вызовы deactivate и activate методу ввода, которые могут быть вызваны в противном случае.

Методы ввода должны вызвать Window.dispose на возвращённом окне метода ввода, когда оно больше не нужно.

Параметры:
title - заголовок, который должен отображаться в строке заголовка окна, если такая строка заголовка есть. Значение null обрабатывается как пустая строка, "".
attachToInputContext - нужно ли этому окну совместно использовать контекст ввода, соответствующий этому контексту метода ввода
Возвращает:
JFrame со специальными характеристиками для использования методами ввода
Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless возвращает true
С:
1.4

enableClientWindowNotification

void enableClientWindowNotification(InputMethod inputMethod, boolean enable)
Включает или выключает уведомления о местоположении и состоянии текущего клиентского окна для указанного метода ввода. При включенных уведомлениях метод notifyClientWindowChange метода ввода вызывается, как описано в спецификации этого метода. Уведомления автоматически отключаются при удалении метода ввода.
Параметры:
inputMethod - метод ввода, для которого уведомления включены или выключены
enable - true для включения, false для выключения

© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/im/spi/InputMethodContext.html

Spec-Zone.ru

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