- java.lang.Object
-
- javafx.beans.binding.NumberExpressionBase
-
- javafx.beans.binding.DoubleExpression
-
- javafx.beans.property.ReadOnlyDoubleProperty
-
- javafx.beans.property.DoubleProperty
-
- All Implemented Interfaces:
-
NumberExpression,Observable,Property<Number>,ReadOnlyProperty<Number>,ObservableDoubleValue,ObservableNumberValue,ObservableValue<Number>,WritableDoubleValue,WritableNumberValue,WritableValue<Number>
- 已知直接子类:
-
DoublePropertyBase,JavaBeanDoubleProperty
public abstract class DoubleProperty extends ReadOnlyDoubleProperty implements Property<Number>, WritableDoubleValue
这个类定义一个Property包裹一个double值。a的值
DoubleProperty可以获取和设置ObservableDoubleValue.get(),DoubleExpression.getValue(),WritableDoubleValue.set(double),并setValue(Number)。一个属性可以绑定和单向绑定,
Property.bind(ObservableValue)和Property.unbind()。 可以使用bindBidirectional(Property)和unbindBidirectional(Property)创建和删除双向绑定。一个
DoubleProperty的上下文可以用ReadOnlyProperty.getBean()和ReadOnlyProperty.getName()读取。注意:将此属性设置或绑定为空值将将属性设置为“0.0”。 见
setValue(java.lang.Number)。- 从以下版本开始:
- JavaFX 2.0
- 另请参见:
-
ObservableDoubleValue,WritableDoubleValue,ReadOnlyDoubleProperty,Property
-
-
构造方法摘要
构造方法 Constructor 描述 DoubleProperty()
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 ObjectProperty<Double>asObject()创建一个ObjectProperty双向绑定到这个DoubleProperty。voidbindBidirectional(Property<Number> other)在这个Property和另一个之间创建双向绑定。static DoublePropertydoubleProperty(Property<Double> property)返回一个DoubleProperty,它包装一个Property并双向绑定到它。voidsetValue(Number v)设置包装的值。StringtoString()返回此DoubleProperty对象的字符串表示形式。voidunbindBidirectional(Property<Number> other)删除这个Property和另一个之间的双向绑定。-
Methods inherited from class javafx.beans.binding.DoubleExpression
add, add, add, add, add, divide, divide, divide, divide, divide, doubleExpression, doubleExpression, doubleValue, floatValue, getValue, intValue, longValue, multiply, multiply, multiply, multiply, multiply, negate, subtract, subtract, subtract, subtract, subtract
-
Methods inherited from class javafx.beans.binding.NumberExpressionBase
asString, asString, asString, greaterThan, greaterThan, greaterThan, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, lessThan, lessThan, lessThan, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, numberExpression
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface javafx.beans.Observable
addListener, removeListener
-
Methods inherited from interface javafx.beans.value.ObservableDoubleValue
get
-
Methods inherited from interface javafx.beans.value.ObservableValue
addListener, getValue, removeListener
-
Methods inherited from class javafx.beans.property.ReadOnlyDoubleProperty
readOnlyDoubleProperty
-
Methods inherited from interface javafx.beans.property.ReadOnlyProperty
getBean, getName
-
Methods inherited from interface javafx.beans.value.WritableDoubleValue
get, set
-
Methods inherited from interface javafx.beans.value.WritableValue
getValue
-
-
-
-
方法详细信息
-
setValue
public void setValue(Number v)
设置包装的值。- Specified by:
-
setValue在接口WritableDoubleValue - Specified by:
-
setValue在接口WritableValue<Number> - 参数
-
v- 新值
-
bindBidirectional
public void bindBidirectional(Property<Number> other)
在这个Property之间创建一个双向绑定。 双向绑定与单向绑定无关。 因此,可以向具有双向绑定的属性添加单向绑定,反之亦然。 但是,这种做法是不鼓励的。可以有一个属性的多个双向绑定。
JavaFX双向绑定实现使用弱侦听器。 这意味着双向绑定不会阻止属性被垃圾回收。
- Specified by:
-
bindBidirectional在接口Property<Number> - 参数
-
other- 其他Property
-
unbindBidirectional
public void unbindBidirectional(Property<Number> other)
删除此Property和另一个之间的双向绑定。 如果不存在属性之间的双向绑定,则调用此方法不起作用。 可以通过第二个属性的调用解除绑定。 此代码将工作:property1.bindBirectional(property2); property2.unbindBidirectional(property1);- Specified by:
-
unbindBidirectional在接口Property<Number> - 参数
-
other- 其他Property
-
toString
public String toString()
返回此DoubleProperty对象的字符串表示形式。- 重写:
-
toString在ReadOnlyDoubleProperty - 结果
-
这个
DoubleProperty对象的字符串表示形式。
-
doubleProperty
public static DoubleProperty doubleProperty(Property<Double> property)
返回一个DoubleProperty,其中包含一个Property并双向绑定到它。 更改此属性将导致原始属性更改。当双向绑定ObjectProperty <Double>和DoubleProperty时,这是非常有用的。
另一种方法是使用DoubleProperty doubleProperty = new SimpleDoubleProperty(1.0); ObjectProperty<Double> objectProperty = new SimpleObjectProperty<>(2.0); // Need to keep the reference as bidirectional binding uses weak references DoubleProperty objectAsDouble = DoubleProperty.doubleProperty(objectProperty); doubleProperty.bindBidirectional(objectAsDouble);
asObject()方法将DoubleProperty转换为ObjectProperty。注意:source属性中的null值将被解释为0.0
- 参数
-
property- 来源Property - 结果
-
A
DoubleProperty包裹了Property - 异常
-
NullPointerException- 如果property是null - 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
asObject()
-
asObject
public ObjectProperty<Double> asObject()
创建一个ObjectProperty双向绑定到这个DoubleProperty。 如果这个值DoubleProperty的变化,价值ObjectProperty将自动更新,反之亦然。可用于将ObjectProperty绑定到DoubleProperty。
DoubleProperty doubleProperty = new SimpleDoubleProperty(1.0); ObjectProperty<Double> objectProperty = new SimpleObjectProperty<>(2.0); objectProperty.bind(doubleProperty.asObject());
- 重写:
-
asObject在ReadOnlyDoubleProperty - 结果
-
新的
ObjectProperty - 从以下版本开始:
- JavaFX 8.0
-
-