Module  java.desktop
软件包  javax.swing.text

Class DocumentFilter.FilterBypass

  • Enclosing class:
    DocumentFilter


    public abstract static class DocumentFilter.FilterBypass
    extends Object
    用作一种方式来规避回调文档以更改它。 希望支持DocumentFilter的文档实现必须提供一个实现,当从DocumentFilter调用以下方法时,该实现不会回调到DocumentFilter中。
    从以下版本开始:
    1.4
    • 构造方法详细信息

      • FilterBypass

        public FilterBypass​()
    • 方法详细信息

      • getDocument

        public abstract Document getDocument​()
        返回发生突变的文档。
        结果
        删除/ insertString的文档将被操作
      • remove

        public abstract void remove​(int offset,
                                    int length)
                             throws BadLocationException
        删除指定的文本区域,绕过DocumentFilter。
        参数
        offset - 从开始> = 0的偏移量
        length - 要删除的字符数> = 0
        异常
        BadLocationException - 删除范围的某些部分不是文档的有效部分。 异常中的位置是遇到的第一个坏位置。
      • insertString

        public abstract void insertString​(int offset,
                                          String string,
                                          AttributeSet attr)
                                   throws BadLocationException
        插入指定的文本,绕过DocumentFilter。
        参数
        offset - 要插入内容> = 0的文档的偏移量。在给定位置或之后跟踪更改的所有位置都将移动。
        string - 要插入的字符串
        attr - 与插入的内容关联的属性。 如果没有属性,则可能为null。
        异常
        BadLocationException - 给定的插入位置不是文档中的有效位置
      • replace

        public abstract void replace​(int offset,
                                     int length,
                                     String string,
                                     AttributeSet attrs)
                              throws BadLocationException
        将文本区域从 offset删除为 offset + length ,并将其替换为 text
        参数
        offset - 文件中的位置
        length - 要删除的文本长度
        string - 要插入的文本,null表示不插入任何文本
        attrs - 指示插入文本的属性的AttributeSet,null是合法的。
        异常
        BadLocationException - 给定的插入不是文档中的有效位置