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

Class DocumentFilter.FilterBypass

  • Enclosing class:
    DocumentFilter

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

      • FilterBypass

        public FilterBypass()
    • 方法详细信息

      • getDocument

        public abstract Document getDocument()
        返回发生变异的Document。
        结果
        删除/ 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
        删除文本区域 offsetoffset + length ,并将其替换为 text
        参数
        offset - 文档中的位置
        length - 要删除的文本长度
        string - 要插入的文本,null表示不插入任何文本
        attrs - 指示插入文本属性的AttributeSet,null是合法的。
        异常
        BadLocationException - 给定的插入不是文档中的有效位置