Module javafx.base

Class DoubleProperty

    • Constructor Detail

      • DoubleProperty

        public DoubleProperty()
    • Method Detail

      • toString

        public String toString()
        Returns a string representation of this DoubleProperty object.
        Overrides:
        toString in class ReadOnlyDoubleProperty
        Returns:
        a string representation of this DoubleProperty object.
      • doubleProperty

        public static DoubleProperty doubleProperty​(Property<Double> property)
        Returns a DoubleProperty that wraps a Property and is bidirectionally bound to it. Changing this property will result in a change of the original property.

        This is very useful when bidirectionally binding an ObjectProperty<Double> and a 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);
        
         
        Another approach is to convert the DoubleProperty to ObjectProperty using asObject() method.

        Note: null values in the source property will be interpreted as 0.0

        Parameters:
        property - The source Property
        Returns:
        A DoubleProperty that wraps the Property
        Throws:
        NullPointerException - if property is null
        Since:
        JavaFX 8.0
        See Also:
        asObject()
      • asObject

        public ObjectProperty<Double> asObject()
        Creates an ObjectProperty that bidirectionally bound to this DoubleProperty. If the value of this DoubleProperty changes, the value of the ObjectProperty will be updated automatically and vice-versa.

        Can be used for binding an ObjectProperty to DoubleProperty.

           DoubleProperty doubleProperty = new SimpleDoubleProperty(1.0);
           ObjectProperty<Double> objectProperty = new SimpleObjectProperty<>(2.0);
        
           objectProperty.bind(doubleProperty.asObject());
         
        Overrides:
        asObject in class ReadOnlyDoubleProperty
        Returns:
        the new ObjectProperty
        Since:
        JavaFX 8.0