Module java.desktop
Package javax.swing.text

Class PlainView

java.lang.Object
javax.swing.text.View
javax.swing.text.PlainView
所有已实现的接口:
SwingConstants, TabExpander
直接已知的子类:
FieldView

public class PlainView extends View implements TabExpander
为简单的多行文本视图实现View接口,其中文本具有一个字体和颜色。该视图将每个子元素表示为一行文本。
参见:
  • Field Details

    • metrics

      protected FontMetrics metrics
      当前字体的字体度量。
  • Constructor Details

    • PlainView

      public PlainView(Element elem)
      构造一个包装在元素上的新的PlainView。
      参数:
      elem - 元素
  • Method Details

    • getTabSize

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

      @Deprecated(since="9") protected void drawLine(int lineIndex, Graphics g, int x, int y)
      Deprecated.
      渲染一行文本,抑制末尾的空格并展开任何制表符。这是为了调用drawUnselectedTextdrawSelectedText方法,以便可以自定义选定和未选定文本的呈现方式。
      参数:
      lineIndex - 要绘制的行 >= 0
      g - Graphics上下文
      x - 起始X位置 >= 0
      y - 起始Y位置 >= 0
      参见:
    • drawLine

      protected void drawLine(int lineIndex, Graphics2D g, float x, float y)
      渲染一行文本,抑制末尾的空格并展开任何制表符。这是为了调用drawUnselectedTextdrawSelectedText方法,以便可以自定义选定和未选定文本的呈现方式。
      参数:
      lineIndex - 要绘制的行 >= 0
      g - Graphics上下文
      x - 起始X位置 >= 0
      y - 起始Y位置 >= 0
      自从:
      9
      参见:
    • drawUnselectedText

      @Deprecated(since="9") 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 - 模型中的结束位置 >= 0
      返回:
      范围结束的X位置 >= 0
      抛出:
      BadLocationException - 如果范围无效
    • drawUnselectedText

      protected float drawUnselectedText(Graphics2D g, float x, float y, int p0, int p1) throws BadLocationException
      将模型中给定范围的文本呈现为普通未选定文本。使用前景色或禁用颜色来呈现文本。
      参数:
      g - 图形上下文
      x - 起始X坐标 >= 0
      y - 起始Y坐标 >= 0
      p0 - 模型中的起始位置 >= 0
      p1 - 模型中的结束位置 >= 0
      返回:
      范围结束的X位置 >= 0
      抛出:
      BadLocationException - 如果范围无效
      自从:
      9
    • drawSelectedText

      @Deprecated(since="9") protected int drawSelectedText(Graphics g, int x, int y, int p0, int p1) throws BadLocationException
      将模型中给定范围的文本呈现为选定文本。这是为了在托管组件中指定的颜色中呈现文本。它假定高亮器将呈现选定的背景。
      参数:
      g - 图形上下文
      x - 起始X坐标 >= 0
      y - 起始Y坐标 >= 0
      p0 - 模型中的起始位置 >= 0
      p1 - 模型中的结束位置 >= 0
      返回:
      范围结束的位置
      抛出:
      BadLocationException - 如果范围无效
    • drawSelectedText

      protected float drawSelectedText(Graphics2D g, float x, float y, int p0, int p1) throws BadLocationException
      将模型中给定范围的文本呈现为选定文本。这是为了在托管组件中指定的颜色中呈现文本。它假定高亮器将呈现选定的背景。
      参数:
      g - 图形上下文
      x - 起始X坐标 >= 0
      y - 起始Y坐标 >= 0
      p0 - 模型中的起始位置 >= 0
      p1 - 模型中的结束位置 >= 0
      返回:
      范围结束的位置
      抛出:
      BadLocationException - 如果范围无效
      自从:
      9
    • getLineBuffer

      protected final Segment getLineBuffer()
      提供可用于从关联文档中获取文本的缓冲区。
      返回:
      缓冲区
    • updateMetrics

      protected void updateMetrics()
      检查字体度量和最长行是否为最新状态。
      自从:
      1.4
    • getPreferredSpan

      public float getPreferredSpan(int axis)
      确定此视图沿轴的首选跨度。
      指定者:
      getPreferredSpan 在类 View
      参数:
      axis - 可能是View.X_AXIS或View.Y_AXIS
      返回:
      视图希望呈现的跨度 >= 0。通常告诉视图呈现返回的跨度,尽管不能保证。父级可能选择调整或分割视图。
      抛出:
      IllegalArgumentException - 对于无效的轴
    • paint

      public void paint(Graphics g, Shape a)
      使用给定的渲染表面和该表面上的区域进行渲染。视图可能需要进行布局并创建子视图,以使自身能够呈现到给定的分配中。
      指定者:
      paint 在类 View
      参数:
      g - 要使用的渲染表面
      a - 要呈现到的分配区域
      参见:
    • modelToView

      public Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException
      提供从文档模型坐标空间到其映射视图的坐标空间的映射。
      指定者:
      modelToView 在类 View中指定
      参数:
      pos - 要转换的位置 >= 0
      a - 要渲染的分配区域
      b - 与偏移量表示的前一个字符或下一个字符的边界位置相关的偏好; b 将具有以下值之一:
      • Position.Bias.Forward
      • Position.Bias.Backward
      返回:
      给定位置的边界框
      抛出:
      BadLocationException - 如果给定位置在关联文档中不表示有效位置
      参见:
    • viewToModel

      public int viewToModel(float x, float y, Shape a, Position.Bias[] bias)
      提供从视图坐标空间到模型的逻辑坐标空间的映射。
      指定者:
      viewToModel 在类 View中指定
      参数:
      x - X坐标 >= 0
      y - Y坐标 >= 0
      a - 要渲染的分配区域
      bias - 返回的偏好
      返回:
      在模型中最能代表给定视图点的位置 >= 0
      参见:
    • insertUpdate

      public void insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)
      通知文档中的某个位置插入了内容,该视图负责该位置。
      覆盖:
      insertUpdate 在类 View中覆盖
      参数:
      changes - 关联文档中的更改信息
      a - 视图的当前分配
      f - 如果视图有子项,则用于重建的工厂
      参见:
    • removeUpdate

      public void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
      通知文档中的某个位置删除了内容,该视图负责该位置。
      覆盖:
      removeUpdate 在类 View中覆盖
      参数:
      changes - 关联文档中的更改信息
      a - 视图的当前分配
      f - 如果视图有子项,则用于重建的工厂
      参见:
    • changedUpdate

      public void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)
      从文档中通知属性在该视图负责的位置发生更改。
      覆盖:
      changedUpdate 在类 View中覆盖
      参数:
      changes - 关联文档中的更改信息
      a - 视图的当前分配
      f - 如果视图有子项,则用于重建的工厂
      参见:
    • setSize

      public void setSize(float width, float height)
      设置视图的大小。如果视图有任何布局职责,这应该导致沿着给定轴的视图布局。
      覆盖:
      setSize 在类 View中覆盖
      参数:
      width - 宽度 >= 0
      height - 高度 >= 0
    • nextTabStop

      public float nextTabStop(float x, int tabOffset)
      返回给定参考位置后的下一个制表位位置。此实现不支持诸如居中之类的功能,因此忽略tabOffset参数。
      指定者:
      nextTabStop 在接口 TabExpander中指定
      参数:
      x - 当前位置 >= 0
      tabOffset - 制表符出现的文本流中的位置 >= 0。
      返回:
      制表位,以点为单位 >= 0
    • updateDamage

      protected void updateDamage(DocumentEvent changes, Shape a, ViewFactory f)
      重绘由给定文档事件覆盖的更改区域。损坏以覆盖范围开始的行,以处理仅在一行上插入/删除的情况。如果添加或删除行,则损坏整个视图。检查最长行是否已更改。
      参数:
      changes - 关联文档中的更改信息
      a - 视图的当前分配
      f - 如果视图有子项,则用于重建的工厂
      自:
      1.4
    • damageLineRange

      protected void damageLineRange(int line0, int line1, Shape a, Component host)
      重绘给定行范围。
      参数:
      line0 - 要重绘的起始行号。这必须是模型中的有效行号。
      line1 - 要重绘的结束行号。这必须是模型中的有效行号。
      a - 视图分配的区域
      host - 托管视图的组件(用于调用重绘)
      自:
      1.4
    • lineToRect

      protected Rectangle lineToRect(Shape a, int line)
      确定表示给定行的矩形。
      参数:
      a - 视图分配的区域
      line - 要查找区域的行号。这必须是模型中的有效行号。
      返回:
      表示给定行的矩形
      自:
      1.4