所有类


javax.swing.text
类 WrappedPlainView

java.lang.Object
  继承者 javax.swing.text.View
      继承者 javax.swing.text.CompositeView
          继承者 javax.swing.text.BoxView
              继承者 javax.swing.text.WrappedPlainView
所有已实现的接口:
SwingConstants, TabExpander

public class WrappedPlainView
   
   
   
   
extends BoxView
implements TabExpander

进行换行的纯文本(仅有一种字体和颜色的文本)视图。此视图期望其关联元素具有表示其应该换行的子元素。它实现为一个包含逻辑行视图的垂直框。逻辑行视图是嵌套类,如果逻辑行太宽以至于分配无法容纳时,这些类把逻辑行呈现为多个物理行。行视图针对其状态利用外部类来减少其内存需求。

行视图通过 drawLine 方法来执行其所有的呈现操作,此方法通过 drawSelectedTextdrawUnselectedText 方法来依次执行其所有呈现操作。这使得子类能容易地专用于呈现而不考虑布局问题。

另请参见:
View

字段摘要
 
从类 javax.swing.text.View 继承的字段
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
 
从接口 javax.swing.SwingConstants 继承的字段
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
构造方法摘要
WrappedPlainView(Element elem)
          创建一个新的 WrappedPlainView。
WrappedPlainView(Element elem, boolean wordWrap)
          创建一个新的 WrappedPlainView。
 
方法摘要
protected  intcalculateBreakPosition(int p0, int p1)
          此方法由嵌套换行视图调用,以确定拆分位置。
 voidchangedUpdate(DocumentEvent e, Shape a, ViewFactory f)
          发出文档中此视图负责的位置上的属性已发生更改的通知。
protected  voiddrawLine(int p0, int p1, Graphics g, int x, int y)
          取消结尾空格并扩展所有制表符,从而呈现一行文本。
protected  intdrawSelectedText(Graphics g, int x, int y, int p0, int p1)
          将模型中给定的范围呈现为所选文本。
protected  intdrawUnselectedText(Graphics g, int x, int y, int p0, int p1)
          将模型中的给定范围呈现为普通未选择的文本。
protected  SegmentgetLineBuffer()
          提供对能用于从关联文档获取文本的缓冲区的访问。
 floatgetMaximumSpan(int axis)
          确定此视图沿某个轴的最大跨距。
 floatgetMinimumSpan(int axis)
          确定此视图沿某个轴的最小跨距。
 floatgetPreferredSpan(int axis)
          确定此视图沿某个轴的首选跨距。
protected  intgetTabSize()
          返回文档的制表符大小设置,默认为 8。
 voidinsertUpdate(DocumentEvent e, Shape a, ViewFactory f)
          发出在文档中此视图负责的位置插入了某些内容的通知。
protected  voidloadChildren(ViewFactory f)
          加载所有子级来初始化视图。
 floatnextTabStop(float x, int tabOffset)
          返回给定引用位置之后的下一个制表位位置。
 voidpaint(Graphics g, Shape a)
          使用给定的呈现表面和表现上的区域来呈现。
 voidremoveUpdate(DocumentEvent e, Shape a, ViewFactory f)
          发出从文档中此视图负责的位置移除了某些内容的通知。
 voidsetSize(float width, float height)
          设置视图的大小。
 
从类 javax.swing.text.BoxView 继承的方法
baselineLayout, baselineRequirements, calculateMajorAxisRequirements, calculateMinorAxisRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAlignment, getAxis, getChildAllocation, getHeight, getOffset, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layout, layoutChanged, layoutMajorAxis, layoutMinorAxis, modelToView, paintChild, preferenceChanged, replace, setAxis, viewToModel
 
从类 javax.swing.text.CompositeView 继承的方法
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPosition, getViewCount, getViewIndex, getViewIndexAtPosition, modelToView, setInsets, setParagraphInsets, setParent
 
从类 javax.swing.text.View 继承的方法
append, breakView, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, isVisible, modelToView, remove, removeAll, updateChildren, updateLayout, viewToModel
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

WrappedPlainView

public WrappedPlainView(Element elem)
创建一个新的 WrappedPlainView。将在字符边界换行。

参数:
elem - 作为视图基础的元素

WrappedPlainView

public WrappedPlainView(Element elem,
                        boolean wordWrap)
创建一个新的 WrappedPlainView。可以在字符或者单词边界换行,具体取决于 wordWrap 参数的设置。

参数:
elem - 作为视图基础的元素
wordWrap - 应该在单词边界换行吗?
方法详细信息

getTabSize

protected int getTabSize()
返回文档的制表符大小设置,默认为 8。

返回:
制表符大小

drawLine

protected void drawLine(int p0,
                        int p1,
                        Graphics g,
                        int x,
                        int y)
取消结尾空格并扩展所有制表符,从而呈现一行文本。实现此方法来调用方法 drawUnselectedTextdrawSelectedText,以便自定义呈现选择和未选择文本的方式。

参数:
p0 - 要使用的文档起始位置,该值 >= 0
p1 - 要使用的文档结尾位置,该值 >= p0
g - 图形上下文
x - 起始 X 位置,该值 >= 0
y - 起始 Y 位置,该值 >= 0
另请参见:
drawUnselectedText(java.awt.Graphics, int, int, int, int), drawSelectedText(java.awt.Graphics, int, int, int, int)

drawUnselectedText

protected int drawUnselectedText(Graphics g,
                                 int x,
                                 int y,
                                 int p0,
                                 int p1)
                          throws BadLocationException
将模型中的给定范围呈现为普通未选择的文本。

参数:
g - 图形上下文
x - 起始 X 坐标,该值 >= 0
y - 起始 Y 坐标,该值 >= 0
p0 - 模型中的开始位置,该值 >= 0
p1 - 模型中的结束位置,该值 >= p0
返回:
结尾范围的 X 位置,该值 >= 0
抛出:
BadLocationException - 如果范围无效

drawSelectedText

protected int drawSelectedText(Graphics g,
                               int x,
                               int y,
                               int p0,
                               int p1)
                        throws BadLocationException
将模型中给定的范围呈现为所选文本。实现此方法以使用承载组件中指定的颜色来呈现文本。假定 highlighter 将呈现所选背景。

参数:
g - 图形上下文
x - 起始 X 坐标,该值 >= 0
y - 起始 Y 坐标,该值 >= 0
p0 - 模型中的开始位置,该值 >= 0
p1 - 模型中的结束位置,该值 >= p0
返回:
范围结尾处的位置
抛出:
BadLocationException - 如果范围无效

getLineBuffer

protected final Segment getLineBuffer()
提供对能用于从关联文档获取文本的缓冲区的访问。

返回:
缓冲区

calculateBreakPosition

protected int calculateBreakPosition(int p0,
                                     int p1)
此方法由嵌套换行视图调用,以确定拆分位置。可以重新实现此方法来改变拆分行为。它将在单词还是字符边界分解,取决于在构造方法中给定的拆分参数。