模块  java.desktop
软件包  javax.swing.text

Class PlainView

  • 实现的所有接口
    SwingConstantsTabExpander
    已知直接子类:
    FieldView

    public class PlainView
    extends View
    implements TabExpander
    实现具有一种字体和颜色的文本的简单多行文本视图的View界面。 视图将每个子元素表示为一行文本。
    另请参见:
    View
    • 字段详细信息

      • metrics

        protected FontMetrics metrics
        当前字体的字体指标。
    • 构造方法详细信息

      • PlainView

        public PlainView​(Element elem)
        构造一个包含在元素上的新PlainView。
        参数
        elem - 元素
    • 方法详细信息

      • getTabSize

        protected int getTabSize()
        返回为文档设置的选项卡大小,默认为8。
        结果
        标签大小
      • 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的结束位置
        结果
        结束范围 >= 0的X位置
        异常
        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)
        确定此视图沿轴的首选跨度。
        Specified by:
        getPreferredSpan在课堂 View
        参数
        axis - 可以是View.X_AXIS或View.Y_AXIS
        结果
        视图要渲染到的范围> = 0.通常,视图会被告知渲染到返回的范围内,但不能保证。 父母可以选择调整视图大小或打破视图。
        异常
        IllegalArgumentException - 对于无效的轴
        另请参见:
        View.getPreferredSpan(int)
      • paint

        public void paint​(Graphics g,
                          Shape a)
        使用给定的渲染表面和该表面上的区域进行渲染。 视图可能需要进行布局并创建子视图以使其自身能够呈现到给定的分配中。
        Specified by:
        paint课程 View
        参数
        g - 要使用的渲染表面
        a - 要分配的已分配区域
        另请参见:
        View.paint(java.awt.Graphics, java.awt.Shape)
      • setSize

        public void setSize​(float width,
                            float height)
        设置视图的大小。 如果它具有任何布局任务,这应该导致沿给定轴的视图布局。
        重写:
        setSizeView
        参数
        width - 宽度> = 0
        height - 高度> = 0
      • nextTabStop

        public float nextTabStop​(float x,
                                 int tabOffset)
        返回给定参考位置后的下一个制表位。 此实现不支持居中等内容,因此忽略了tabOffset参数。
        Specified by:
        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)
        重新绘制给定的行范围。
        参数
        host - 托管视图的组件(用于调用repaint)
        a - 为要呈现的视图分配的区域
        line0 - 要重新绘制的起始行号。 这必须是模型中的有效行号。
        line1 - 要重新绘制的结束行号。 这必须是模型中的有效行号。
        从以下版本开始:
        1.4
      • lineToRect

        protected Rectangle lineToRect​(Shape a,
                                       int line)
        确定表示给定行的矩形。
        参数
        a - 为要呈现的视图分配的区域
        line - 找到该地区的行号。 这必须是模型中的有效行号。
        结果
        表示给定行的矩形
        从以下版本开始:
        1.4