java.lang.Object
javax.swing.text.LayeredHighlighter
javax.swing.text.DefaultHighlighter
- 所有已实现的接口:
-
Highlighter
- 直接已知的子类:
-
BasicTextUI.BasicHighlighter
实现了Highlighter接口。实现了一个简单的高亮绘制器,以纯色渲染。
- 参见:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class简单的高亮绘制器,用纯色填充高亮区域。Nested classes/interfaces declared in class javax.swing.text.LayeredHighlighter
LayeredHighlighter.LayerPainterNested classes/interfaces declared in interface javax.swing.text.Highlighter
Highlighter.Highlight, Highlighter.HighlightPainter -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final LayeredHighlighter.LayerPainterLayeredHighlighter.LayerPainter的默认实现,可用于绘制高亮。 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddHighlight(int p0, int p1, Highlighter.HighlightPainter p) 向视图添加一个高亮。voidchangeHighlight(Object tag, int p0, int p1) 更改一个高亮。void当UI从JTextComponent的界面中移除时调用。boolean返回绘制分层高亮。复制高亮。void当UI被安装到JTextComponent的界面中时调用。void渲染高亮。voidpaintLayeredHighlights(Graphics g, int p0, int p1, Shape viewBounds, JTextComponent editor, View view) 当叶子视图(如LabelView)进行渲染时,应调用此方法。void移除所有高亮。voidremoveHighlight(Object tag) 从视图中移除一个高亮。voidsetDrawsLayeredHighlights(boolean newValue) 如果为true,则高亮将随着视图绘制文本而绘制。
-
Field Details
-
DefaultPainter
LayeredHighlighter.LayerPainter的默认实现,可用于绘制高亮。从1.4版本开始,此字段为final。
-
-
Constructor Details
-
DefaultHighlighter
public DefaultHighlighter()创建一个新的DefaultHighlighter对象。
-
-
Method Details
-
paint
渲染高亮。- 参数:
-
g- 图形上下文
-
install
当UI被安装到JTextComponent的界面中时调用。安装编辑器,并移除任何现有的高亮。- 参数:
-
c- 编辑器组件 - 参见:
-
deinstall
当UI从JTextComponent的界面中移除时调用。- 参数:
-
c- 组件 - 参见:
-
addHighlight
public Object addHighlight(int p0, int p1, Highlighter.HighlightPainter p) throws BadLocationException 向视图添加一个高亮。返回一个可用于引用高亮的标记。- 参数:
-
p0- 要高亮范围的起始偏移量 >= 0 -
p1- 要高亮范围的结束偏移量 >= p0 -
p- 用于实际渲染高亮的绘制器 - 返回:
- 可用作引用高亮的对象
- 抛出:
-
BadLocationException- 如果指定位置无效
-
removeHighlight
从视图中移除一个高亮。- 参数:
-
tag- 高亮的引用
-
removeAllHighlights
public void removeAllHighlights()移除所有高亮。 -
changeHighlight
更改一个高亮。- 参数:
-
tag- 高亮标记 -
p0- 范围的开始 >= 0 -
p1- 范围的结束 >= p0 - 抛出:
-
BadLocationException- 如果指定位置无效
-
getHighlights
复制高亮。实际上并不克隆每个高亮,而只是对它们进行引用。- 返回:
- 复制品
- 参见:
-
paintLayeredHighlights
public void paintLayeredHighlights(Graphics g, int p0, int p1, Shape viewBounds, JTextComponent editor, View view) 当叶子视图(如LabelView)进行渲染时,应调用此方法。如果给定区域中有高亮,则将立即绘制。- 指定者:
-
paintLayeredHighlights在类LayeredHighlighter - 参数:
-
g- 用于绘制的Graphics -
p0- 视图的起始偏移量 -
p1- 视图的结束偏移量 -
viewBounds- 视图的边界 -
editor- JTextComponent -
view- 正在渲染的View实例
-
setDrawsLayeredHighlights
public void setDrawsLayeredHighlights(boolean newValue) 如果为true,则高亮将随着视图绘制文本而绘制。也就是说,视图将调用paintLayeredHighlight,这将导致在绘制文本之前绘制一个矩形(如果偏移量在高亮区域内)。为了使其工作,提供的绘制器必须是LayeredHighlightPainter的实例。- 参数:
-
newValue- 新值
-
getDrawsLayeredHighlights
public boolean getDrawsLayeredHighlights()返回绘制分层高亮。- 返回:
- 绘制分层高亮
-