-
- All Superinterfaces:
-
InputMethodRequests
public interface InputMethodContext extends InputMethodRequests
提供输入方法可用于与其客户端组件通信或请求其他服务的方法。 此接口由输入方法框架实现,输入方法在通过InputMethod.setInputMethodContext(java.awt.im.spi.InputMethodContext)接收的实例上调用其方法。 应该没有其他实现者或呼叫者。- 从以下版本开始:
- 1.3
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 JFramecreateInputMethodJFrame(String title, boolean attachToInputContext)创建一个顶级Swing JFrame供输入法使用。WindowcreateInputMethodWindow(String title, boolean attachToInputContext)创建一个顶级窗口供输入法使用。voiddispatchInputMethodEvent(int id, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition)根据给定的参数创建输入方法事件,并将其分派给客户端组件。voidenableClientWindowNotification(InputMethod inputMethod, boolean enable)启用或禁用当前客户端窗口的指定输入方法的位置和状态的通知。
-
-
-
方法详细信息
-
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)打开窗口时,输入上下文将阻止取消激活并激活对输入方法的调用,否则可能会导致调用。
当不再需要时,输入方法必须在返回的输入法窗口上调用
Window.dispose。- 参数
-
title- 如果有这样的标题栏,则在窗口标题栏中显示标题。null值被视为空字符串“”。 -
attachToInputContext- 此窗口是否应共享与此输入方法上下文对应的输入上下文 - 结果
- 具有输入方法使用的特殊特征的窗口
- 异常
-
HeadlessException- 如果GraphicsEnvironment.isHeadless返回true
-
createInputMethodJFrame
JFrame createInputMethodJFrame(String title, boolean attachToInputContext)
创建一个顶级Swing JFrame供输入法使用。 此窗口的预期行为是:- 它浮动在所有文档窗口和对话框之上
- 它及其包含的所有组件都没有得到关注
- 它具有轻量级装饰,例如没有标题的减少拖动区域
可能会也可能不会显示标题,具体取决于创建的窗口的实际类型。
如果attachToInputContext为true,则新窗口将共享与此输入方法上下文对应的输入上下文,以便窗口中组件的事件自动分派到输入方法。 此外,当使用setVisible(true)打开窗口时,输入上下文将阻止取消激活并激活对输入方法的调用,否则可能会导致调用。
当不再需要时,输入方法必须在返回的输入法窗口上调用
Window.dispose。- 参数
-
title- 如果有这样的标题栏,则显示在窗口标题栏中的标题。null值被视为空字符串“”。 -
attachToInputContext- 此窗口是否应共享与此输入方法上下文对应的输入上下文 - 结果
- 具有输入方法使用的特殊特征的JFrame
- 异常
-
HeadlessException- 如果GraphicsEnvironment.isHeadless返回true - 从以下版本开始:
- 1.4
-
enableClientWindowNotification
void enableClientWindowNotification(InputMethod inputMethod, boolean enable)
- 参数
-
inputMethod- 启用或禁用通知的输入方法 -
enable- 如果启用,enabletrue,禁用为false
-
-