模块  java.desktop

Package java.awt.im.spi

提供可用于开发可与任何Java运行时环境一起使用的输入方法的接口。 输入方法是软件组件,允许用户以不同于键盘上的简单输入的方式输入文本。 它们通常用于输入日语,中文或韩语 - 使用数千个不同的字符 - 在键盘上键数少得多的键盘上。 但是,这个包还允许开发其他语言的输入方法和使用完全不同的输入机制,例如手写识别。

包装输入法

通过将输入方法添加到应用程序的类路径,可以使输入方法可用。 输入方法的主JAR文件必须包含以下文件:
  META-INF/services/java.awt.im.spi.InputMethodDescriptor 
该文件应包含一个完全限定的类名列表,每行一个,实现java.awt.im.spi.InputMethodDescriptor接口的类。 每个名称周围的空格和制表符以及空行都将被忽略。 评论字符是'#'\u0023 ); 在每一行上,忽略第一个注释字符后面的所有字符。 该文件必须以UTF-8编码。

例如,如果为Foo输入法实现java.awt.im.spi.InputMethodDesciptor的类的完全限定名称是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的类的InputMethod可以推迟到实际需要时。

加载输入法

输入方法框架通常会延迟输入方法类的加载,直到绝对需要它们为止。 它在AWT初始化期间仅加载InputMethodDescriptor实现。 选择输入法时,它会加载InputMethod实现。

Java输入法和对等文本组件

Java输入方法框架旨在支持输入方法(主机输入方法和Java输入方法)和组件(对等和轻量级)的所有组合。 但是,由于底层平台的限制,可能无法始终启用Java输入方法和对等AWT组件之间的通信。 因此,对该特定组合的支持取决于平台。 在Sun的Java SE运行时环境中,Windows上支持此组合,但Solaris不支持。

相关文档

有关概述,教程,示例,指南和工具文档,请参阅Input Method Framework Overview
从以下版本开始:
1.3