- java.lang.Object
-
- javafx.beans.binding.ObjectExpression<T>
-
- javafx.beans.property.ReadOnlyObjectProperty<T>
-
- javafx.beans.property.ObjectProperty<T>
-
- javafx.beans.property.ObjectPropertyBase<T>
-
- 参数类型
-
T
- 包装值的类型
- All Implemented Interfaces:
-
Observable
,Property<T>
,ReadOnlyProperty<T>
,ObservableObjectValue<T>
,ObservableValue<T>
,WritableObjectValue<T>
,WritableValue<T>
- 已知直接子类:
-
SimpleObjectProperty
,StyleableObjectProperty
public abstract class ObjectPropertyBase<T> extends ObjectProperty<T>
ObjectPropertyBase
类是包含任意Object
的属性的基类。 它提供除了ReadOnlyProperty.getBean()
和ReadOnlyProperty.getName()
方法之外的属性所需的所有功能,必须通过扩展类来实现。- 从以下版本开始:
- JavaFX 2.0
- 另请参见:
-
ObjectProperty
-
-
构造方法摘要
构造方法 Constructor 描述 ObjectPropertyBase()
ObjectPropertyBase
的构造ObjectPropertyBase
。ObjectPropertyBase(T initialValue)
的构造函数为ObjectPropertyBase
。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
addListener(InvalidationListener listener)
添加一个InvalidationListener
,当Observable
无效时,它将被通知。void
addListener(ChangeListener<? super T> listener)
添加一个ChangeListener
,当ObservableValue
的值发生变化时,它将被通知。void
bind(ObservableValue<? extends T> newObservable)
为此创建一个单向绑定Property
。protected void
fireValueChangedEvent()
发送所有附件的通知InvalidationListeners
和ChangeListeners
。T
get()
获取包装的值。protected void
invalidated()
可以覆盖方法invalidated()
以接收无效通知。boolean
isBound()
可以用来检查,如果一个Property
是绑定的。void
removeListener(InvalidationListener listener)
从监听器列表中删除给定的监听器,当Observable
的值变为无效时通知Observable
。void
removeListener(ChangeListener<? super T> listener)
从监听器列表中删除给定的监听器,当ObservableValue
的值发生更改时通知ObservableValue
。void
set(T newValue)
设置包装的值。String
toString()
返回此ObjectPropertyBase
对象的字符串表示形式。void
unbind()
删除此Property
的单向绑定。-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from class javafx.beans.binding.ObjectExpression
asString, asString, asString, getValue, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotNull, isNull, objectExpression
-
Methods inherited from class javafx.beans.property.ObjectProperty
bindBidirectional, setValue, unbindBidirectional
-
Methods inherited from interface javafx.beans.value.ObservableValue
getValue
-
Methods inherited from interface javafx.beans.property.ReadOnlyProperty
getBean, getName
-
Methods inherited from interface javafx.beans.value.WritableValue
getValue
-
-
-
-
构造方法详细信息
-
ObjectPropertyBase
public ObjectPropertyBase()
ObjectPropertyBase
的构造ObjectPropertyBase
。
-
ObjectPropertyBase
public ObjectPropertyBase(T initialValue)
ObjectPropertyBase
的构造ObjectPropertyBase
。- 参数
-
initialValue
- 包装的初始值Object
-
-
方法详细信息
-
addListener
public void addListener(InvalidationListener listener)
说明从接口Observable
复制添加一个InvalidationListener
,当Observable
无效时,它将被通知。 如果同一个监听器被多次添加,那么它将被多次通知。 也就是说,没有检查确保唯一性。请注意,相同的实际
InvalidationListener
实例可能会安全注册为不同的Observables
。Observable
存储强烈的对监听器的引用,这将阻止侦听器被垃圾回收,并可能导致内存泄漏。 建议您在使用后通过调用removeListener
取消注册监听器,或者使用WeakInvalidationListener
的实例避免此情况。- 参数
-
listener
-listener
注册 - 另请参见:
-
Observable.removeListener(InvalidationListener)
-
removeListener
public void removeListener(InvalidationListener listener)
描述从接口Observable
复制从监听器列表中删除给定的监听器,当Observable
的值变为无效时通知Observable
。如果给定的侦听器以前没有被注册过(即它从未被添加过),那么这个方法调用是一个无操作的。 如果以前已经添加,那么它将被删除。 如果多次添加,那么只有第一次出现将被删除。
- 参数
-
listener
- 要删除的侦听器 - 另请参见:
-
Observable.addListener(InvalidationListener)
-
addListener
public void addListener(ChangeListener<? super T> listener)
描述从接口ObservableValue
复制添加一个ChangeListener
,当ObservableValue
的值发生变化时,它将被通知。 如果同一个监听器被多次添加,那么它将被多次通知。 也就是说,没有检查确保唯一性。请注意,相同的实际
ChangeListener
实例可能会安全注册为不同的ObservableValues
。ObservableValue
存储对侦听器的强烈引用,这将阻止侦听器被垃圾回收,并可能导致内存泄漏。 建议您在使用后通过调用removeListener
注销一个监听器,或者使用WeakChangeListener
的一个实例来避免这种情况。- 参数
-
listener
-listener
注册 - 另请参见:
-
ObservableValue.removeListener(ChangeListener)
-
removeListener
public void removeListener(ChangeListener<? super T> listener)
描述从接口ObservableValue
复制从监听器列表中删除给定的监听器,当ObservableValue
的值发生变化时通知ObservableValue
。如果给定的侦听器以前没有被注册过(即它从未被添加过),那么这个方法调用是一个无操作的。 如果以前已经添加,那么它将被删除。 如果多次添加,那么只有第一次出现将被删除。
- 参数
-
listener
- 要删除的侦听器 - 另请参见:
-
ObservableValue.addListener(ChangeListener)
-
fireValueChangedEvent
protected void fireValueChangedEvent()
发送所有附件的通知InvalidationListeners
和ChangeListeners
。 如果绑定变为无效,则通过调用set(T)
或绑定属性来手动调用该值时调用此方法。
-
invalidated
protected void invalidated()
可以覆盖方法invalidated()
以接收无效通知。 这是Objects
定义属性的首选选项,因为它需要更少的内存。 默认实现为空。
-
get
public T get()
获取包装的值。 这必须与从WritableValue.getValue()
返回的值相同。此方法只能将WritableObjectValue API与
WritableBooleanValue
和WritableNumberValue
的子类对齐- 结果
- 当前值
-
set
public void set(T newValue)
设置包装的值。 应相当于WritableValue.setValue(java.lang.Object)
- 参数
-
newValue
- 新的价值 - 另请参见:
-
WritableObjectValue.get()
-
isBound
public boolean isBound()
可以用来检查,如果一个Property
是绑定的。- 结果
-
true
如果Property
是绑定的,false
否则 - 另请参见:
-
Property.bind(javafx.beans.value.ObservableValue)
-
bind
public void bind(ObservableValue<? extends T> newObservable)
为此创建一个单向绑定Property
。请注意,JavaFX具有通过弱侦听器实现的所有绑定调用。 这意味着bound属性可以被垃圾回收并停止更新。
- 参数
-
newObservable
- 可观察到这个Property
应该绑定。
-
unbind
public void unbind()
删除这个Property
的单向绑定。 如果Property
没有绑定,则调用此方法没有任何作用。
-
toString
public String toString()
返回此ObjectPropertyBase
对象的字符串表示形式。- 重写:
-
toString
在ObjectProperty<T>
- 结果
-
这个
ObjectPropertyBase
对象的字符串表示形式。
-
-