-
- 型パラメータ:
T
- ラップされた値の型
- すべてのスーパー・インタフェース:
Observable
,ObservableValue<T>
- 既知のすべてのサブインタフェース:
NumberBinding
- 既知のすべての実装クラス:
BooleanBinding
,DoubleBinding
,FloatBinding
,IntegerBinding
,ListBinding
,LongBinding
,MapBinding
,ObjectBinding
,SetBinding
,StringBinding
public interface Binding<T> extends ObservableValue<T>
Binding
は、1つ以上のソースに依存する値を計算します。 ソースは通常バインディングの依存性と呼ばれます。 バインディングは、変更の依存性を監視し、値を自動的に更新します。バインディングの依存性は任意に設定できますが、ほとんど
ObservableValue
の実装です。Binding
は、別のバインディングで使用できるObservableValue
を実装します。 これを使用すると、簡単なバインディングから非常に複雑なバインディングに至るまでアセンブルできます。JavaFXランタイムのすべてのバインディングは遅延計算されます。 つまり、依存性が変更されると、バインディングの結果がすぐに再計算されず、無効とマークされます。 次に無効なバインディングの値をリクエストする場合に計算されます。
ベース・クラスはすでにほとんどの必要な機能を提供しているため、このパッケージで定義されているベース・クラスのいずれか(たとえば、
DoubleBinding
)を使用して、カスタム・バインディングを定義することをお薦めします。 この例は、DoubleBinding
を参照してください。- 導入されたバージョン:
- JavaFX 2.0
- 関連項目:
DoubleBinding
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 void
dispose()
現在使用されておらず、参照を削除できるBinding
を示します。ObservableList<?>
getDependencies()
変更できないObservableList
のバインディングの依存性を返します。void
invalidate()
バインディングを無効とマークします。boolean
isValid()
バインディングが有効かどうかを確認します。-
インタフェース javafx.beans.Observableで宣言されたメソッド
addListener、removeListener
-
インタフェース javafx.beans.value.ObservableValueで宣言されたメソッド
addListener、getValue、removeListener
-
-
-
-
メソッドの詳細
-
isValid
boolean isValid()
バインディングが有効かどうかを確認します。- 戻り値:
Binding
が有効な場合はtrue
、そうでない場合はfalse
-
invalidate
void invalidate()
バインディングを無効とマークします。 これにより、次にリクエストするときにBinding
の値が強制的に再計算されます。
-
getDependencies
ObservableList<?> getDependencies()
変更できないObservableList
のバインディングの依存性を返します。 実装はオプションです。 このメソッドの主な目的は、開発中の開発者のサポートです。 実行中のバインディングの依存性を参照および監視できます。このメソッドを本番コードで使用しないため、この機能をできるだけスパースに実装することをお薦めします。 たとえば、依存性が変更されない場合、呼出しごとに新しい
ObservableList
を生成できるため、結果を格納する必要がなくなります。- 戻り値:
- 依存性の変更できないObservableList
-
dispose
void dispose()
現在使用されておらず、参照を削除できるBinding
を示します。 通常このメソッドの呼出しは、リスナーを登録解除して依存性を監視するためにバインディングを停止します。 実装はオプションです。実装のすべてのバインディングは、
WeakInvalidationListener
のインスタンスを使用します。つまり、通常バインディングを破棄する必要がありません。 ただし、WeakReferences
をサポートしない環境でアプリケーションを使用する場合、未使用のBindings
を破棄してメモリー・リークを回避する必要があります。
-
-