java.lang.Object
java.awt.im.InputMethodHighlight
InputMethodHighlight 用于描述正在组成的文本的高亮属性。描述可以在两个级别进行:在抽象级别,它指定转换状态和文本是否被选中;在具体级别,它指定用于呈现高亮的样式属性。InputMethodHighlight 必须在抽象级别提供描述;它可以或可以不提供具体级别的描述。如果没有提供具体样式,则渲染器应使用
Toolkit.mapInputMethodHighlight(java.awt.im.InputMethodHighlight)
来映射到具体样式。
抽象描述由三个字段组成:selected
、state
和 variation
。 selected
表示文本范围是否是输入法当前正在处理的范围,例如,当前在菜单中显示转换候选词的段落。 state
表示转换状态。状态值由输入法框架定义,并应在所有从抽象到具体样式的映射中加以区分。当前定义的状态值为原始(未转换)和已转换。这些状态值建议在文本组合的主要转换步骤之前和之后使用,比如在假名->汉字或拼音->汉字转换之前和之后。 variation
字段允许输入法表达有关转换结果的附加信息。
InputMethodHighlight 实例通常用作从 AttributedCharacterIterator 返回的 INPUT_METHOD_HIGHLIGHT 属性的属性值。它们可以包装到 Annotation
实例中,以指示单独的文本段。
- 自 JDK 版本:
- 1.2
- 参见:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
已转换文本状态的常量。static final int
原始文本状态的常量。static final InputMethodHighlight
选定已转换文本的默认高亮的常量。static final InputMethodHighlight
选定原始文本的默认高亮的常量。static final InputMethodHighlight
未选定已转换文本的默认高亮的常量。static final InputMethodHighlight
未选定原始文本的默认高亮的常量。 -
Constructor Summary
ConstructorDescriptionInputMethodHighlight
(boolean selected, int state) 构造输入法高亮记录。InputMethodHighlight
(boolean selected, int state, int variation) 构造输入法高亮记录。InputMethodHighlight
(boolean selected, int state, int variation, Map<TextAttribute, ?> style) 构造输入法高亮记录。 -
Method Summary
Modifier and TypeMethodDescriptionint
getState()
返回文本范围的转换状态。Map
<TextAttribute, ?> getStyle()
返回文本范围的呈现样式属性,或 null。int
返回文本范围的变化。boolean
返回文本范围是否被选中。
-
Field Details
-
RAW_TEXT
public static final int RAW_TEXT原始文本状态的常量。- 参见:
-
CONVERTED_TEXT
public static final int CONVERTED_TEXT已转换文本状态的常量。- 参见:
-
UNSELECTED_RAW_TEXT_HIGHLIGHT
未选定原始文本的默认高亮的常量。 -
SELECTED_RAW_TEXT_HIGHLIGHT
选定原始文本的默认高亮的常量。 -
UNSELECTED_CONVERTED_TEXT_HIGHLIGHT
未选定已转换文本的默认高亮的常量。 -
SELECTED_CONVERTED_TEXT_HIGHLIGHT
选定已转换文本的默认高亮的常量。
-
-
Constructor Details
-
InputMethodHighlight
public InputMethodHighlight(boolean selected, int state) 构造输入法高亮记录。将变化设置为 0,样式设置为 null。- 参数:
-
selected
- 文本范围是否被选中 -
state
- 文本范围的转换状态 - RAW_TEXT 或 CONVERTED_TEXT - 抛出:
-
IllegalArgumentException
- 如果给定的状态不是 RAW_TEXT 或 CONVERTED_TEXT - 参见:
-
InputMethodHighlight
public InputMethodHighlight(boolean selected, int state, int variation) 构造输入法高亮记录。样式设置为 null。- 参数:
-
selected
- 文本范围是否被选中 -
state
- 文本范围的转换状态 - RAW_TEXT 或 CONVERTED_TEXT -
variation
- 文本范围的样式变化 - 抛出:
-
IllegalArgumentException
- 如果给定的状态不是 RAW_TEXT 或 CONVERTED_TEXT - 参见:
-
InputMethodHighlight
构造输入法高亮记录。提供的样式属性映射必须是不可修改的。- 参数:
-
selected
- 文本范围是否被选中 -
state
- 文本范围的转换状态 - RAW_TEXT 或 CONVERTED_TEXT -
variation
- 文本范围的变化 -
style
- 文本范围的呈现样式属性,或 null - 抛出:
-
IllegalArgumentException
- 如果给定的状态不是 RAW_TEXT 或 CONVERTED_TEXT - 自 JDK 版本:
- 1.3
- 参见:
-
-
Method Details
-
isSelected
public boolean isSelected()返回文本范围是否被选中。- 返回:
- 文本范围是否被选中
-
getState
public int getState()返回文本范围的转换状态。- 返回:
- 文本范围的转换状态 - RAW_TEXT 或 CONVERTED_TEXT。
- 参见:
-
getVariation
public int getVariation()返回文本范围的变化。- 返回:
- 文本范围的变化
-
getStyle
返回文本范围的呈现样式属性,或 null。- 返回:
- 文本范围的呈现样式属性,或 null
- 自 JDK 版本:
- 1.3
-