Spec-Zone.ru › OpenJDK 25

Пакет java.awt.im.spi

package java.awt.im.spi
Предоставляет интерфейсы, позволяющие разрабатывать методы ввода, которые можно использовать в любой среде выполнения Java. Методы ввода — это программные компоненты, позволяющие пользователю вводить текст способами, отличными от обычного набора на клавиатуре. Их часто используют для ввода японского, китайского или корейского языков — языков с тысячами различных символов — на клавиатурах с гораздо меньшим количеством клавиш. Однако этот пакет также позволяет разрабатывать методы ввода для других языков и использовать совершенно иные способы ввода, например распознавание рукописного текста.

Упаковка методов ввода

Методы ввода можно сделать доступными, добавив их в путь к классам приложения. Основной JAR-файл метода ввода должен содержать файл:
    META-INF/services/java.awt.im.spi.InputMethodDescriptor
В файле должен содержаться список полных имён классов, по одному в строке, для классов, реализующих интерфейс java.awt.im.spi.InputMethodDescriptor. Пробелы и символы табуляции вокруг каждого имени, а также пустые строки игнорируются. Символ комментария — '#' (\u0023); в каждой строке игнорируются все символы после первого символа комментария. Файл должен быть закодирован в UTF-8.

Например, если полное имя класса, реализующего java.awt.im.spi.InputMethodDescriptor для метода ввода Foo, — com.sun.ime.FooInputMethodDescriptor, то файл META-INF/services/java.awt.im.spi.InputMethodDescriptor содержит строку:

    com.sun.ime.FooInputMethodDescriptor
Метод ввода также должен предоставлять как минимум два класса: один класс, реализующий интерфейс java.awt.im.spi.InputMethodDescriptor, и один класс, реализующий интерфейс java.awt.im.spi.InputMethod. Реализации этих интерфейсов следует разделить на разные классы, чтобы загрузку класса, реализующего InputMethod, можно было отложить до момента, когда он действительно понадобится.

Загрузка методов ввода

Среда методов ввода обычно откладывает загрузку классов методов ввода до тех пор, пока они не понадобятся. Во время инициализации AWT она загружает только реализации InputMethodDescriptor. Реализация InputMethod загружается, когда выбран соответствующий метод ввода.

Методы ввода Java и текстовые компоненты с peer-объектами

Среда методов ввода Java предназначена для поддержки всех сочетаний методов ввода (методов ввода хост-системы и методов ввода Java) и компонентов (с peer-объектами и облегчённых). Однако из-за ограничений нижележащей платформы связь между методами ввода Java и компонентами AWT с peer-объектами не всегда можно обеспечить. Поэтому поддержка именно этого сочетания зависит от платформы. В средах выполнения Sun Java SE это сочетание поддерживается в Windows, но не в Solaris.

Связанная документация

Обзоры, учебные материалы, примеры, руководства и документацию по инструментам см. в разделе Обзор среды методов ввода.
Начиная с версии:
1.3
Пакет Описание
java.awt.im
Предоставляет классы и интерфейсы для среды методов ввода.
Класс Описание
InputMethod
Определяет интерфейс метода ввода, поддерживающего ввод сложного текста.
InputMethodContext
Предоставляет методы, с помощью которых методы ввода могут взаимодействовать с клиентскими компонентами или запрашивать другие службы.
InputMethodDescriptor
Определяет методы, предоставляющие достаточно сведений о методе ввода для обеспечения его выбора и загрузки.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её дочерних компаний в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/im/spi/package-summary.html

Spec-Zone.ru

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