- 所有已实现的接口:
-
Serializable
输入法事件中包含的文本由两部分组成: 已提交文本和组合文本。任一部分都可能为空。这两部分一起替换了先前事件中发送的任何未提交的组合文本,或当前选定的已提交文本。已提交文本应该被集成到文本组件的持久数据中,不会再次发送。组合文本可能会重复发送,以反映用户的编辑操作。已提交文本始终位于组合文本之前。
- 自:
- 1.2
- 参见:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int表示输入法文本中插入点发生变化的事件类型。static final int标记输入法事件id范围的第一个整数id。static final int标记输入法事件id范围的最后一个整数id。static final int表示输入法文本发生变化的事件类型。Fields declared in class java.awt.AWTEvent
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASKFields declared in class java.util.EventObject
source -
Constructor Summary
ConstructorsConstructorDescriptionInputMethodEvent(Component source, int id, long when, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition) 使用指定的源组件、类型、时间、文本、插入点和可见位置构造一个InputMethodEvent。InputMethodEvent(Component source, int id, TextHitInfo caret, TextHitInfo visiblePosition) 使用指定的源组件、类型、插入点和可见位置构造一个InputMethodEvent。InputMethodEvent(Component source, int id, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition) 使用指定的源组件、类型、文本、插入点和可见位置构造一个InputMethodEvent。 -
Method Summary
Methods declared in class java.util.EventObject
getSource
-
Field Details
-
INPUT_METHOD_FIRST
标记输入法事件id范围的第一个整数id。- 参见:
-
INPUT_METHOD_TEXT_CHANGED
表示输入法文本发生变化的事件类型。此事件由输入法在处理输入时生成。- 参见:
-
CARET_POSITION_CHANGED
表示输入法文本中插入点发生变化的事件类型。此事件由输入法在处理输入时生成,如果只有插入点发生了变化。- 参见:
-
INPUT_METHOD_LAST
标记输入法事件id范围的最后一个整数id。- 参见:
-
-
Constructor Details
-
InputMethodEvent
public InputMethodEvent(Component source, int id, long when, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition) 使用指定的源组件、类型、时间、文本、插入点和可见位置构造一个InputMethodEvent。插入点和可见位置的偏移量是相对于当前组合文本的;也就是说,如果这是一个
INPUT_METHOD_TEXT_CHANGED事件,则在text中的组合文本,否则在前一个INPUT_METHOD_TEXT_CHANGED事件的text中的组合文本。请注意,传入无效的
id会导致未指定的行为。如果source为null,此方法将抛出IllegalArgumentException。- 参数:
-
source- 事件来源的对象 -
id- 事件类型 -
when- 指定事件发生时间的长整型整数 -
text- 组合的已提交和组合文本,已提交文本优先;当事件类型为CARET_POSITION_CHANGED时必须为null;如果没有已提交或组合文本,则INPUT_METHOD_TEXT_CHANGED事件可以为null -
committedCharacterCount- 文本中已提交字符的数量 -
caret- 插入点;如果当前组合文本中没有插入点,则为null -
visiblePosition- 最重要的可见位置;如果当前组合文本中没有建议的可见位置,则为null - 抛出:
-
IllegalArgumentException- 如果id不在范围INPUT_METHOD_FIRST..INPUT_METHOD_LAST内;或者如果id为CARET_POSITION_CHANGED且text不为null;或者如果committedCharacterCount不在范围0..(text.getEndIndex() - text.getBeginIndex())内 -
IllegalArgumentException- 如果source为null - 自:
- 1.4
-
InputMethodEvent
public InputMethodEvent(Component source, int id, AttributedCharacterIterator text, int committedCharacterCount, TextHitInfo caret, TextHitInfo visiblePosition) 使用指定的源组件、类型、文本、插入点和可见位置构造一个InputMethodEvent。插入点和可见位置的偏移量是相对于当前组合文本的;也就是说,如果这是一个
INPUT_METHOD_TEXT_CHANGED事件,则在text中的组合文本,否则在前一个INPUT_METHOD_TEXT_CHANGED事件的text中的组合文本。此事件的时间戳通过调用EventQueue.getMostRecentEventTime()进行初始化。请注意,传入无效的
id会导致未指定的行为。如果source为null,此方法将抛出IllegalArgumentException。- 参数:
-
source- 事件来源的对象 -
id- 事件类型 -
text- 组合的已提交和组合文本,已提交文本优先;当事件类型为CARET_POSITION_CHANGED时必须为null;如果没有已提交或组合文本,则INPUT_METHOD_TEXT_CHANGED事件可以为null -
committedCharacterCount- 文本中已提交字符的数量 -
caret- 插入点;如果当前组合文本中没有插入点,则为null -
visiblePosition- 最重要的可见位置;如果当前组合文本中没有建议的可见位置,则为null - 抛出:
-
IllegalArgumentException- 如果id不在范围INPUT_METHOD_FIRST..INPUT_METHOD_LAST内;或者如果id为CARET_POSITION_CHANGED且text不为null;或者如果committedCharacterCount不在范围0..(text.getEndIndex() - text.getBeginIndex())内 -
IllegalArgumentException- 如果source为null
-
InputMethodEvent
使用指定的源组件、类型、插入点和可见位置构造一个InputMethodEvent。文本设置为null,committedCharacterCount设置为0。插入点和可见位置的偏移量是相对于当前组合文本的;也就是说,如果正在构造的事件作为
CARET_POSITION_CHANGED事件,则在前一个INPUT_METHOD_TEXT_CHANGED事件的text中的组合文本。对于没有文本的INPUT_METHOD_TEXT_CHANGED事件,caret和visiblePosition必须为null。此事件的时间戳通过调用EventQueue.getMostRecentEventTime()进行初始化。请注意,传入无效的
id会导致未指定的行为。如果source为null,此方法将抛出IllegalArgumentException。- 参数:
-
source- 事件来源的对象 -
id- 事件类型 -
caret- 插入点;如果当前组合文本中没有插入点,则为null -
visiblePosition- 最重要的可见位置;如果当前组合文本中没有建议的可见位置,则为null - 抛出:
-
IllegalArgumentException- 如果id不在范围INPUT_METHOD_FIRST..INPUT_METHOD_LAST内 -
IllegalArgumentException- 如果source为null
-
-
Method Details
-
getText
获取组合的已提交和组合文本。从索引0到索引getCommittedCharacterCount() - 1的字符是已提交文本,其余字符是组合文本。- 返回:
- 文本。对于CARET_POSITION_CHANGED始终为null;如果没有组合或已提交文本,则对于INPUT_METHOD_TEXT_CHANGED可能为null。
-
getCommittedCharacterCount
public int getCommittedCharacterCount()获取文本中已提交字符的数量。- 返回:
- 文本中已提交字符的数量
-
getCaret
获取插入符。插入符的偏移量是相对于当前组合文本的;也就是说,如果这是一个
INPUT_METHOD_TEXT_CHANGED事件,则是在getText()中的组合文本,否则是在前一个INPUT_METHOD_TEXT_CHANGED事件的getText()中的组合文本。- 返回:
- 插入符(又称插入点)。如果当前组合文本中没有插入符,则返回null。
-
getVisiblePosition
获取最重要的可见位置。可见位置的偏移量是相对于当前组合文本的;也就是说,如果这是一个
INPUT_METHOD_TEXT_CHANGED事件,则是在getText()中的组合文本,否则是在前一个INPUT_METHOD_TEXT_CHANGED事件的getText()中的组合文本。- 返回:
- 最重要的可见位置。如果当前组合文本中没有建议的可见位置,则返回null。
-
consume
public void consume()消耗此事件,以使其不会被产生它的源默认方式处理。 -
isConsumed
public boolean isConsumed()返回此事件是否已被消耗。- 覆盖:
-
isConsumed在类AWTEvent - 返回:
-
如果此事件已被消耗,则返回
true;否则返回false - 参见:
-
getWhen
public long getWhen()返回此事件发生的时间戳。- 返回:
- 此事件的时间戳
- 自:
- 1.4
-
paramString
返回标识此事件的参数字符串。此方法对于事件记录和调试很有用。它包含以文本形式的事件ID,由“+”分隔的已提交和组合文本的字符,已提交字符的数量,插入符和可见位置。- 覆盖:
-
paramString在类AWTEvent - 返回:
- 标识事件及其属性的字符串
-