javax.swing.text

接口
异常
java.lang.Object
  继承者 javax.swing.text.LayeredHighlighter
      继承者 javax.swing.text.DefaultHighlighter
所有已实现的接口:
Highlighter
直接已知子类:
BasicTextUI.BasicHighlighter

public class DefaultHighlighter
     
extends LayeredHighlighter

实现 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
 

字段详细信息

DefaultPainter

public static final LayeredHighlighter.LayerPainter DefaultPainter
LayeredHighlighter.LayerPainter 的默认实现,可用于绘制高亮显示区域。

从 1.4 开始,此字段为 final。

构造方法详细信息

DefaultHighlighter

public DefaultHighlighter()
创建新 DefaultHighlighther 对象。

方法详细信息

paint

public void paint(Graphics g)
呈现高亮显示区域。

参数:
g - 图形上下文

install

public void install(JTextComponent c)
当 UI 安装到 JTextComponent 的接口时调用。安装编辑器并移除任何现有的高亮显示。

参数:
c - 编辑器组件
另请参见:
Highlighter.install(javax.swing.text.JTextComponent)

deinstall

public void deinstall(JTextComponent c)
从 JTextComponent 的接口移除 UI 时调用。

参数:
c - 组件
另请参见:
Highlighter.deinstall(javax.swing.text.JTextComponent)

addHighlight

public Object addHighlight(int p0,
                           int p1,
                           Highlighter.HighlightPainter p)
                    throws BadLocationException
向视图添加高亮显示。返回一个可用于引用高亮显示的标记。

参数:
p0 - 要高亮显示范围的起始偏移量,该值 >= 0
p1 - 要高亮显示范围的结束偏移量,该值 >= p0
p - 要用于实际呈现高亮显示的 painter
返回:
可充当引用高亮显示的标记的对象
抛出:
BadLocationException - 如果指定的位置无效

removeHighlight

public void removeHighlight(Object tag)
从视图中移除高亮显示。

参数:
tag - 对高亮显示的引用

removeAllHighlights

public void removeAllHighlights()
移除所有的高亮显示。


changeHighlight

public void changeHighlight(Object tag,
                            int p0,
                            int p1)
                     throws BadLocationException
更改高亮显示。

参数:
tag - 高亮显示标记
p0 - 范围的开始处,该值 >= 0
p1 - 范围的结束处,该值 >= p0
抛出:
BadLocationException - 如果指定的位置无效

getHighlights

public Highlighter.Highlight[] getHighlights()
制作高亮显示的副本。它并不实际复制每个高亮显示区域,只是对它们进行引用。

返回:
副本
另请参见:
Highlighter.getHighlights()

paintLayeredHighlights

public void paintLayeredHighlights(Graphics g,
                                   int p0,
                                   int p1,
                                   Shape viewBounds,
                                   JTextComponent editor,
                                   View view)
当要呈现叶 View (例如,LabelView)时,要调用此方法。如果高亮显示位于给定的区域,则会立即绘制该高亮显示。

指定者:
LayeredHighlighter 中的 paintLayeredHighlights
参数:
g - 用于绘制的图形
p0 - 视图的起始偏移量
p1 - 视图的结束偏移量
viewBounds - 视图的边界
editor - JTextComponent
view - 要呈现的视图实例

setDrawsLayeredHighlights

public void setDrawsLayeredHighlights(boolean newValue)
如果为 true,则高亮显示将在视图绘制文本时绘制。即视图将调用 paintLayeredHighlight,结果将导致在绘制文本前绘制矩形(如果偏移量位于高亮显示区域中)。要这样做,所提供的 painter 必须是 LayeredHighlightPainter 的一个实例。


getDrawsLayeredHighlights

public boolean getDrawsLayeredHighlights()