JavaTM Platform
Standard Ed. 6

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 Platform
Standard Ed. 6

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

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。