public abstract static class JFormattedTextField.AbstractFormatter extends Object implements Serializable
AbstractFormatter のインスタンスは、Object から String および String から Object への変換を処理するために JFormattedTextField で使用されます。AbstractFormatter は、編集ポリシーまたはナビゲーションポリシーを強化したり、JFormattedTextField の表示方法を操作して必要なポリシーを強化することができます。
AbstractFormatter は一度に 1 つの JFormattedTextField だけで有効です。JFormattedTextField は使用準備ができたときに install を呼び出し、使用を終了すると uninstall を呼び出します。追加の状態をインストールするサブクラスは必要に応じて install をオーバーライドし、上位クラスに通知を行います。
サブクラスは変換メソッドの stringToValue と valueToString をオーバーライドする必要があります。特定の方法で getActions、getNavigationFilter、および getDocumentFilter をオーバーライドし、JFormattedTextField を制限することもできます。
JFormattedTextField を一時的に無効な状態にすることを許可するサブクラスでは、適切なタイミングで setEditValid を呼び出す必要があります。
| コンストラクタと説明 |
|---|
JFormattedTextField.AbstractFormatter() |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected Object |
clone()
AbstractFormatter を複製します。 |
protected Action[] |
getActions()
Action のカスタムセットを提供する場合は、サブクラス化してオーバーライドします。 |
protected DocumentFilter |
getDocumentFilter()
入力を制限する
DocumentFilter を提供する場合は、サブクラス化し、オーバーライドします。 |
protected JFormattedTextField |
getFormattedTextField()
AbstractFormatter がインストールされている現在の JFormattedTextField を返します。 |
protected NavigationFilter |
getNavigationFilter()
ユーザーのナビゲート先を制限するフィルタを提供する場合にサブクラス化し、オーバーライドします。
|
void |
install(JFormattedTextField ftf)
AbstractFormatter を特定の JFormattedTextField にインストールします。 |
protected void |
invalidEdit()
これはユーザーが不正な文字を入力したときに呼び出されます。
|
protected void |
setEditValid(boolean valid)
JFormattedTextField の editValid プロパティーを更新するために呼び出します。 |
abstract Object |
stringToValue(String text)
任意のオブジェクトを返す
text の構文を解析します。 |
void |
uninstall()
JFormattedTextField にインストールされた、任意の状態の AbstractFormatter をアンインストールします。 |
abstract String |
valueToString(Object value)
value を表示するための文字列値を返します。 |
public void install(JFormattedTextField ftf)
AbstractFormatter を特定の JFormattedTextField にインストールします。これにより valueToString が呼び出されて、現在の値が JFormattedTextField から String へ変換されます。次に、getActions からの Action、getDocumentFilter から返された DocumentFilter、getNavigationFilter から返された NavigationFilter が、JFormattedTextField にインストールされます。
通常、サブクラスでのオーバーライドが必要になるのは、JFormattedTextField に追加リスナーをインストールする場合だけです。
現在の値を String に変換するときに ParseException が発生した場合は、テキストとして空の String が設定され、JFormattedTextField に不正な状態を示す値が設定されます。
これは public メソッドですが、通常は JFormattedTextField のサブクラスに対してだけ有効です。値が変更されるか、内部状態が変更される場合、JFormattedTextField によりこのメソッドが適切なタイミングで呼び出されます。ユーザー自身が呼び出す必要があるのは、JFormattedTextField をサブクラス化している場合、および AbstractFormatter を JFormattedTextField とは異なるタイミングでインストールまたはアンインストールしている場合だけです。
ftf - フォーマット対象の JformattedTextField。null の場合は、現在の JFormattedTextField からのアンインストールを示す。public void uninstall()
JFormattedTextField にインストールされた、任意の状態の AbstractFormatter をアンインストールします。JFormattedTextField にインストールされた DocumentFilter、NavigationFilter、および追加 Action がリセットされます。public abstract Object stringToValue(String text) throws ParseException
text の構文を解析します。フォーマッタによっては null が返されます。text - 変換対象の文字列ParseException - 変換でエラーが発生した場合public abstract String valueToString(Object value) throws ParseException
value を表示するための文字列値を返します。value - 変換対象の値ParseException - 変換でエラーが発生した場合protected JFormattedTextField getFormattedTextField()
AbstractFormatter がインストールされている現在の JFormattedTextField を返します。protected void invalidEdit()
protected void setEditValid(boolean valid)
JFormattedTextField の editValid プロパティーを更新するために呼び出します。JFormattedTextField が常に有効な状態であるようにポリシーを強化している場合は、呼び出す必要はありません。valid - JFormattedTextField の有効な状態protected Action[] getActions()
Action のカスタムセットを提供する場合は、サブクラス化してオーバーライドします。install により、JFormattedTextField の ActionMap にインストールされます。protected DocumentFilter getDocumentFilter()
DocumentFilter を提供する場合は、サブクラス化し、オーバーライドします。install は戻り値を JFormattedTextField にインストールします。protected NavigationFilter getNavigationFilter()
install は戻り値を JFormattedTextField にインストールします。protected Object clone() throws CloneNotSupportedException
AbstractFormatter を複製します。返されるインスタンスは JFormattedTextField には関連付けられません。clone、クラス: ObjectCloneNotSupportedException - オブジェクトのクラスが Cloneable インタフェースをサポートしていない場合。clone メソッドをオーバーライドしたサブクラスも、インスタンスを複製できないことを示すためにこの例外をスローすることがある。Cloneable バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.