java.lang.Objectjavax.swing.text.LayeredHighlighter
javax.swing.text.DefaultHighlighter
public class DefaultHighlighter
实现 Highlighter 接口。实现一个用纯色绘制的简单高亮显示 painter。
Highlighter
| 嵌套类摘要 | |
|---|---|
static class |
DefaultHighlighter.DefaultHighlightPainter 只高亮显示用纯色填充高亮显示区域的 painter。 |
| 从类 javax.swing.text.LayeredHighlighter 继承的嵌套类/接口 |
|---|
LayeredHighlighter.LayerPainter |
| 从接口 javax.swing.text.Highlighter 继承的嵌套类/接口 |
|---|
Highlighter.Highlight, Highlighter.HighlightPainter |
| 字段摘要 | |
|---|---|
static LayeredHighlighter.LayerPainter |
DefaultPainter LayeredHighlighter.LayerPainter 的默认实现,可用于绘制高亮显示区域。 |
| 构造方法摘要 | |
|---|---|
DefaultHighlighter() 创建新 DefaultHighlighther 对象。 |
|
| 方法摘要 | |
|---|---|
Object |
addHighlight(int p0, int p1, Highlighter.HighlightPainter p) 向视图添加高亮显示。 |
void |
changeHighlight(Object tag, int p0, int p1) 更改高亮显示。 |
void |
deinstall(JTextComponent c) 从 JTextComponent 的接口移除 UI 时调用。 |
boolean |
getDrawsLayeredHighlights() |
Highlighter.Highlight[] |
getHighlights() 制作高亮显示的副本。 |
void |
install(JTextComponent c) 当 UI 安装到 JTextComponent 的接口时调用。 |
void |
paint(Graphics g) 呈现高亮显示区域。 |
void |
paintLayeredHighlights(Graphics g, int p0, int p1, Shape viewBounds, JTextComponent editor, View view) 当要呈现叶 View (例如,LabelView)时,要调用此方法。 |
void |
removeAllHighlights() 移除所有的高亮显示。 |
void |
removeHighlight(Object tag) 从视图中移除高亮显示。 |
void |
setDrawsLayeredHighlights(boolean newValue) 如果为 true,则高亮显示将在视图绘制文本时绘制。 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 字段详细信息 |
|---|
public static final LayeredHighlighter.LayerPainter DefaultPainter
从 1.4 开始,此字段为 final。
| 构造方法详细信息 |
|---|
public DefaultHighlighter()
| 方法详细信息 |
|---|
public void paint(Graphics g)
g - 图形上下文
public void install(JTextComponent c)
c - 编辑器组件
Highlighter.install(javax.swing.text.JTextComponent)
public void deinstall(JTextComponent c)
c - 组件
Highlighter.deinstall(javax.swing.text.JTextComponent)
public Object addHighlight(int p0, int p1, Highlighter.HighlightPainter p) throws BadLocationException
p0 - 要高亮显示范围的起始偏移量,该值 >= 0
p1 - 要高亮显示范围的结束偏移量,该值 >= p0
p - 要用于实际呈现高亮显示的 painter
BadLocationException - 如果指定的位置无效
public void removeHighlight(Object tag)
tag - 对高亮显示的引用
public void removeAllHighlights()
public void changeHighlight(Object tag, int p0, int p1) throws BadLocationException
tag - 高亮显示标记
p0 - 范围的开始处,该值 >= 0
p1 - 范围的结束处,该值 >= p0
BadLocationException - 如果指定的位置无效
public Highlighter.Highlight[] getHighlights()
Highlighter.getHighlights()
public void paintLayeredHighlights(Graphics g, int p0, int p1, Shape viewBounds, JTextComponent editor, View view)
LayeredHighlighter 中的
paintLayeredHighlights
g - 用于绘制的图形
p0 - 视图的起始偏移量
p1 - 视图的结束偏移量
viewBounds - 视图的边界
editor - JTextComponent
view - 要呈现的视图实例
public void setDrawsLayeredHighlights(boolean newValue)
paintLayeredHighlight,结果将导致在绘制文本前绘制矩形(如果偏移量位于高亮显示区域中)。要这样做,所提供的 painter 必须是 LayeredHighlightPainter 的一个实例。
public boolean getDrawsLayeredHighlights()