Spec-Zone.ru › OpenJDK 24

Интерфейс 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, 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/java/awt/im/spi/InputMethodContext.html

Spec-Zone.ru

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