JavaTM 2
Platform
Std. Ed. v1.4.0

javax.swing.text
クラス DocumentFilter

java.lang.Object
  |
  +--javax.swing.text.DocumentFilter

public class DocumentFilter
extends Object

DocumentFilter は、名前が示すように Document 変更メソッドのフィルタです。DocumentFilter を格納する Document が、insert または remove を介して変更されると、適当なメソッド呼び出しが DocumentFilter に転送されます。デフォルトの実装では、変更が可能です。サブクラスは、場合に応じてメソッドをスーパークラス上に呼び出すか、渡された FilterBypass に必要なメソッドを呼び出すことで、変更にフィルタを設定できます。サブクラスは、変更を Document にコールバックするのではなく、スーパークラスや FilterBypass への呼び出しを行う必要があります。

remove または insertStringDocumentFilter 上で呼び出されると、DocumentFilterFilterBypass を複数回または異なる領域に対してコールバックできますが、remove または insertString メソッドから返された後に、FilterBypass へコールバックしてはなりません。

導入されたバージョン:
1.4
関連項目:
Document

入れ子クラスの概要
static class DocumentFilter.FilterBypass
          Document へのコールバックを回避して、Document を変更する場合に使用されます。
 
コンストラクタの概要
DocumentFilter()
           
 
メソッドの概要
 void insertString(DocumentFilter.FilterBypass fb, int offset, String string, AttributeSet attr)
          指定した Document にテキストを挿入する前に呼び出されます。
 void remove(DocumentFilter.FilterBypass fb, int offset, int length)
          指定した Document の指定した範囲を削除する前に呼び出されます。
 void replace(DocumentFilter.FilterBypass fb, int offset, int length, String text, AttributeSet attrs)
          指定した Document でテキストの範囲を置き換える前に呼び出されます。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

DocumentFilter

public DocumentFilter()
メソッドの詳細

remove

public void remove(DocumentFilter.FilterBypass fb,
                   int offset,
                   int length)
            throws BadLocationException
指定した Document の指定した範囲を削除する前に呼び出されます。条件付きで削除を許可されるサブクラスは、このメソッドをオーバーライドしてスーパークラスの実装を必要に応じて呼び出すだけか、FilterBypass を必要に応じて直接呼び出します。

パラメータ:
fb - Document の変更に使用する FilterBypass
offset - 先頭からのオフセット >= 0
length - 削除対象の文字数 >= 0
例外:
BadLocationException - 削除範囲の一部がドキュメントの有効部分でなかった場合。例外内の位置は、最初に検出された不正な位置

insertString

public void insertString(DocumentFilter.FilterBypass fb,
                         int offset,
                         String string,
                         AttributeSet attr)
                  throws BadLocationException
指定した Document にテキストを挿入する前に呼び出されます。条件付きで挿入を許可するサブクラスは、このメソッドをオーバーライドしてスーパークラスの実装を必要に応じて呼び出すだけか、FilterBypass を必要に応じて直接呼び出します。

パラメータ:
fb - Document の変更に使用する FilterBypass
offset - コンテンツを挿入するドキュメントに対するオフセット >= 0。指定位置やその後の変更を追跡するすべての位置が移動
string - 挿入する文字列
attr - 挿入されたコンテンツに関連している属性。属性がない場合は null
例外:
BadLocationException - 指定された挿入の位置が、ドキュメント内の有効な位置ではない場合

replace

public void replace(DocumentFilter.FilterBypass fb,
                    int offset,
                    int length,
                    String text,
                    AttributeSet attrs)
             throws BadLocationException
指定した Document でテキストの範囲を置き換える前に呼び出されます。条件付きで置き換えを許可するサブクラスは、このメソッドをオーバーライドしてスーパークラスの実装を必要に応じて呼び出すだけか、FilterBypass を必要に応じて直接呼び出します。

パラメータ:
fb - Document の変更に使用する FilterBypass
offset - Document での位置
length - 削除するテキストの長さ
text - 挿入するテキスト。null の場合、テキストは挿入されない
attrs - 挿入されたテキストの属性を示す AttributeSet。null も可
例外:
BadLocationException - 指定された挿入の位置が、ドキュメント内の有効な位置ではない場合

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.