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