- java.lang.Object
-
- javafx.beans.value.ObservableValueBase<T>
-
- All Implemented Interfaces:
-
Observable
,ObservableValue<T>
public abstract class ObservableValueBase<T> extends Object implements ObservableValue<T>
- 从以下版本开始:
- JavaFX 2.0
-
-
构造方法摘要
构造方法 Constructor 描述 ObservableValueBase()
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
addListener(InvalidationListener listener)
添加一个InvalidationListener
,当Observable
无效时,它将被通知。void
addListener(ChangeListener<? super T> listener)
添加一个ChangeListener
,当ObservableValue
的值更改时,它将被通知。protected void
fireValueChangedEvent()
通知目前注册的观察员的价值变动。void
removeListener(InvalidationListener listener)
从监听器列表中删除给定的监听器,当Observable
的值变为无效时通知Observable
。void
removeListener(ChangeListener<? super T> listener)
从监听器列表中删除给定的监听器,当ObservableValue
的值发生变化时通知ObservableValue
。-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface javafx.beans.value.ObservableValue
getValue
-
-
-
-
方法详细信息
-
addListener
public void addListener(InvalidationListener listener)
添加一个InvalidationListener
,当Observable
变得无效时,它将被通知。 如果同一个监听器被多次添加,那么它将被多次通知。 也就是说,没有检查确保唯一性。请注意,相同的实际
InvalidationListener
实例可能会安全注册到不同的Observables
。Observable
存储对侦听器的强烈引用,这将阻止侦听器被垃圾回收,并可能导致内存泄漏。 建议您在使用后通过调用removeListener
取消注册监听器,或者使用WeakInvalidationListener
的实例避免此情况。- Specified by:
-
addListener
在接口Observable
- 参数
-
listener
-listener
注册 - 另请参见:
-
Observable.removeListener(InvalidationListener)
-
addListener
public void addListener(ChangeListener<? super T> listener)
添加一个ChangeListener
,当ObservableValue
的值发生变化时,将通知它。 如果同一个监听器被多次添加,那么它将被多次通知。 也就是说,没有检查确保唯一性。请注意,相同的实际
ChangeListener
实例可以安全地注册到不同的ObservableValues
。ObservableValue
存储对侦听器的强烈引用,这将阻止侦听器被垃圾回收,并可能导致内存泄漏。 建议您在使用后通过调用removeListener
注销监听器,或使用WeakChangeListener
的实例避免此情况。- Specified by:
-
addListener
在接口ObservableValue<T>
- 参数
-
listener
-listener
注册 - 另请参见:
-
ObservableValue.removeListener(ChangeListener)
-
removeListener
public void removeListener(InvalidationListener listener)
从监听器列表中删除给定的监听器,当Observable
的值变为无效时,它们将被通知。如果给定的侦听器以前没有被注册过(即它从未被添加过),那么这个方法调用是一个无操作的。 如果以前已经添加,那么它将被删除。 如果多次添加,那么只有第一次出现将被删除。
- Specified by:
-
removeListener
在接口Observable
- 参数
-
listener
- 要删除的侦听器 - 另请参见:
-
Observable.addListener(InvalidationListener)
-
removeListener
public void removeListener(ChangeListener<? super T> listener)
从监听器列表中删除给定的监听器,每当ObservableValue
的值发生变化时通知ObservableValue
。如果给定的侦听器以前没有被注册过(即它从未被添加过),那么这个方法调用是一个无操作的。 如果以前已经添加,那么它将被删除。 如果多次添加,那么只有第一次出现将被删除。
- Specified by:
-
removeListener
在接口ObservableValue<T>
- 参数
-
listener
- 要删除的侦听器 - 另请参见:
-
ObservableValue.addListener(ChangeListener)
-
fireValueChangedEvent
protected void fireValueChangedEvent()
Notify the currently registered observers of a value change. This implementation will ignore all adds and removes of observers that are done while a notification is processed. The changes take effect in the following call to fireValueChangedEvent.
-
-