- 所有父级接口:
InputMethodRequests
提供输入方法可用于与其客户端组件通信或请求其他服务的方法。该接口由输入法框架实现,输入法在它们通过
InputMethod.setInputMethodContext(java.awt.im.spi.InputMethodContext)
接收到的实例上调用其方法。不应有其他实施者或调用者。
- 自从:
- 1.3
-
方法总结
修饰符和类型方法描述createInputMethodJFrame
(String title, boolean attachToInputContext) 创建供输入方法使用的顶级 Swing JFrame。createInputMethodWindow
(String title, boolean attachToInputContext) 创建供输入方法使用的顶级窗口。void
dispatchInputMethodEvent
(int id, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition) 根据给定的参数创建输入方法事件并将其分派给客户端组件。void
enableClientWindowNotification
(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
- 插入符(又名插入点);如果当前组合文本中没有插入符,则为 nullvisiblePosition
- 最重要的可见位置;如果在当前组合文本中没有建议可见位置,则为 null
-
createInputMethodWindow
创建供输入方法使用的顶级窗口。此窗口的预期行为是:- 它漂浮在所有文档窗口和对话框之上
- 它和它包含的所有组件都没有获得焦点
- 它具有轻量级装饰,例如没有标题的减少拖动区域
标题可能会也可能不会显示,这取决于创建的实际窗口类型。
如果 attachToInputContext 为真,新窗口将共享与此输入方法上下文对应的输入上下文,以便窗口中组件的事件自动调度到输入方法。此外,当使用 setVisible(true) 打开窗口时,输入上下文将阻止可能以其他方式导致的对输入方法的停用和激活调用。
输入法必须在不再需要时在返回的输入法窗口上调用
Window.dispose
。- 参数:
title
- 要显示在窗口标题栏中的标题,如果有这样的标题栏。null
值被视为空字符串“”。attachToInputContext
- 此窗口是否应共享与此输入法上下文相对应的输入上下文- 返回:
- 供输入方法使用的具有特殊特性的窗口
- 抛出:
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
-
createInputMethodJFrame
创建供输入方法使用的顶级 Swing JFrame。此窗口的预期行为是:- 它漂浮在所有文档窗口和对话框之上
- 它和它包含的所有组件都没有获得焦点
- 它具有轻量级装饰,例如没有标题的减少拖动区域
标题可能会也可能不会显示,这取决于创建的实际窗口类型。
如果 attachToInputContext 为真,新窗口将共享与此输入方法上下文对应的输入上下文,以便窗口中组件的事件自动调度到输入方法。此外,当使用 setVisible(true) 打开窗口时,输入上下文将阻止可能以其他方式导致的对输入方法的停用和激活调用。
输入法必须在不再需要时在返回的输入法窗口上调用
Window.dispose
。- 参数:
title
- 要显示在窗口标题栏中的标题,如果有这样的标题栏。null
值被视为空字符串“”。attachToInputContext
- 此窗口是否应共享与此输入法上下文相对应的输入上下文- 返回:
- 具有供输入方法使用的特殊特性的 JFrame
- 抛出:
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
- 自从:
- 1.4
-
enableClientWindowNotification
启用或禁用指定输入法的当前客户端窗口位置和状态的通知。启用通知后,将按照该方法规范中的描述调用输入法的notifyClientWindowChange
方法。处理输入法时,通知会自动禁用。- 参数:
inputMethod
- 启用或禁用通知的输入法enable
- true 启用,false 禁用
-