public interface InputMethod
子类的输入法可以通过输入法框架加载;他们可以通过API的选择(InputContext.selectInputMethod
)或用户界面(输入法选择菜单)。
Modifier and Type | Method and Description |
---|---|
void |
activate()
激活立即输入处理的输入法。
|
void |
deactivate(boolean isTemporary)
关闭输入法。
|
void |
dispatchEvent(AWTEvent event)
发送事件到输入法。
|
void |
dispose()
释放该输入法所使用的资源。
|
void |
endComposition()
结束当前上下文中可能正在进行的任何输入组合。
|
Object |
getControlObject()
从该输入法返回一个控制对象,或为。
|
Locale |
getLocale()
返回当前输入区域设置。
|
void |
hideWindows()
关闭或隐藏此输入法实例或其类打开的所有窗口。
|
boolean |
isCompositionEnabled()
确定是否启用了此输入方法。
|
void |
notifyClientWindowChange(Rectangle bounds)
通知本输入法在客户端窗口的位置或状态的变化。
|
void |
reconvert()
启动恢复操作。
|
void |
removeNotify()
通知客户端组件已从其层次结构或删除输入法,输入法支持已被禁用的组件。
|
void |
setCharacterSubsets(Character.Subset[] subsets)
集的Unicode字符集,输入法是允许输入的子集。
|
void |
setCompositionEnabled(boolean enable)
启用或禁用该输入法组成,根据参数的值
enable 。
|
void |
setInputMethodContext(InputMethodContext context)
设置输入法上下文,用于将输入法事件发送到客户端组件,并用于从客户端组件请求信息。
|
boolean |
setLocale(Locale locale)
尝试设置输入区域设置。
|
void setInputMethodContext(InputMethodContext context)
这种方法是在实例化这个输入法一次立即打电话。
context
-这种输入法输入法上下文
NullPointerException
-如果
context
是空的
boolean setLocale(Locale locale)
这种方法被称为
InputContext.selectInputMethod
,getLocale
方法返回一个非空值。locale
-现场输入
NullPointerException
-如果
locale
是空的
Locale getLocale()
这种方法被称为
InputContext.getLocale
和void setCharacterSubsets(Character.Subset[] subsets)
这种方法被称为
InputContext.setCharacterSubsets
。subsets
的子集的Unicode字符集的字符可以输入
void setCompositionEnabled(boolean enable)
一种用于组合的输入方法解释了用于组成和控制目的的传入事件,而一个禁用的输入方法不解释事件的组合物。请注意,事件被传递到输入方法,无论它是否被启用或不,和一个输入方法,是禁用的组成仍然可以解释事件的控制目的,包括启用或禁用自己的组成。
对于由主机操作系统提供的输入方法,它不总是可能的,以确定是否支持此操作。例如,一个输入法只能用于某些地区使组成,和其他地方做什么。这种输入方法,它是可能的,这种方法不把UnsupportedOperationException
,又不影响是否构成启用。
这种方法被称为
InputContext.setCompositionEnabled
,InputContext.selectInputMethod
,如果先前选定的输入法的isCompositionEnabled
方法返回不抛出异常。enable
。
enable
-是否启用对组成的输入法
UnsupportedOperationException
-如果这个输入法不支持启用/禁用操作
isCompositionEnabled()
boolean isCompositionEnabled()
这种方法被称为
InputContext.isCompositionEnabled
和InputContext.selectInputMethod
时使用。true
如果本输入法功能的成分;
false
否则。
UnsupportedOperationException
-如果这个输入法不支持检查是否启用组成
setCompositionEnabled(boolean)
void reconvert()
InputMethodRequests.getSelectedText
方法当前的客户端组件。它可以使用其他
InputMethodRequests
方法要求恢复操作所需的额外信息。的组成和致力于文本的操作是一个序列的
InputMethodEvent
s发送到客户端组件。如果给定的文本不能转回,相同的文本应该被发送到客户端组件作为致力于文本。
这种方法被称为InputContext.reconvert
。
UnsupportedOperationException
-如果输入法不支持恢复操作。
void dispatchEvent(AWTEvent event)
consume
法;这使得事件不被派遣到组件的事件处理方法或事件监听器。
事件派遣他们是否有inputevent或其子类的实例。keyEvent包括AWT事件类和实例。
这种方法被称为InputContext.dispatchEvent
。
event
-事件被派遣到输入法
NullPointerException
-如果
event
是空的
void notifyClientWindowChange(Rectangle bounds)
InputMethodContext.enableClientWindowNotification
)。调用这个方法暂时如果输入上下文的
removeNotify
方法叫暂停,恢复时,输入法是一个新的客户端组件激活。它被称为在下列情况
enableClientWindowNotification(inputMethod, true)
如果当前的客户端组件的存在,enableClientWindowNotification(inputMethod, true)
如果调用没有当前客户端组件中是可用的,bounds
客户端窗口的
bounds
屏幕上;或null如果客户端窗口图标化或看不见的
void activate()
如果一个输入法提供了它自己的窗口,它应该确保在这一点上,所有必要的窗口是开放的和可见的。
这种方法被称为
InputContext.dispatchEvent
当客户端组件接收到一个focus_gained事件,InputContext.selectInputMethod
。void deactivate(boolean isTemporary)
FocusEvent.isTemporary
。
如果一个输入法提供了它自己的窗口,只有与当前的组合(如查找选择窗口)有关的窗口应该在这一点上关闭。这是可能的,输入法将立即重新激活一个不同的客户端组件,然后关闭并重新打开更持久的Windows(如控制面板)将会造成不必要的屏幕闪烁。在不同的输入法类的一个实例被激活,hideWindows()
称为当前输入法。
这种方法被称为
InputContext.dispatchEvent
当客户端组件接收到一个focus_lost事件,InputContext.selectInputMethod
时使用,removeNotify
如果当前的客户端组件被删除。isTemporary
-焦点是否改变是暂时的
void hideWindows()
void removeNotify()
这种方法被称为InputContext.removeNotify
。
该方法仅当输入方法无效时才调用。
void endComposition()
文本编辑组件可以在各种情况下调用此组件,例如,当用户在文本中移动插入点(但在所合成的文本之外),或者当组件的文本保存到文件或复制到剪贴板时。
这种方法被称为
InputContext.endComposition
,InputContext.dispatchEvent
当切换到一个不同的客户端组件InputContext.selectInputMethod
。void dispose()
这种方法被称为InputContext.dispose
。
该方法仅当输入方法无效时才调用。此接口的任何方法都在处理后调用此实例。
Object getControlObject()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.