Module  javafx.base
软件包  javafx.beans.property

Class LongProperty

    • 构造方法详细信息

      • LongProperty

        public LongProperty​()
    • 方法详细信息

      • 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​()
        返回此 LongProperty对象的字符串表示形式。
        重写:
        toStringReadOnlyLongProperty
        结果
        这个 LongProperty对象的字符串表示形式。
      • longProperty

        public static LongProperty longProperty​(Property<Long> property)
        返回一个LongProperty ,其中包含一个Property并双向绑定到它。 更改此属性将导致原始属性更改。

        当双向绑定ObjectProperty <Long>和LongProperty时,这是非常有用的。

           LongProperty longProperty = new SimpleLongProperty(1L);
           ObjectProperty<Long> objectProperty = new SimpleObjectProperty<>(2L);
        
           // Need to keep the reference as bidirectional binding uses weak references
           LongProperty objectAsLong = LongProperty.longProperty(objectProperty);
        
           longProperty.bindBidirectional(objectAsLong);
        
         
        另一种方法是使用asObject()方法将LongProperty转换为ObjectProperty。

        注意:source属性中的null值将被解释为0L

        参数
        property - 来源 Property
        结果
        A LongProperty包裹了 Property
        异常
        NullPointerException - 如果 propertynull
        从以下版本开始:
        JavaFX 8.0
        另请参见:
        asObject()
      • asObject

        public ObjectProperty<Long> asObject​()
        创建一个ObjectProperty双向绑定到这个LongProperty 如果这个值LongProperty的变化,价值ObjectProperty将自动更新,反之亦然。

        可以将ObjectProperty绑定到LongProperty。

           LongProperty longProperty = new SimpleLongProperty(1L);
           ObjectProperty<Long> objectProperty = new SimpleObjectProperty<>(2L);
        
           objectProperty.bind(longProperty.asObject());
         
        重写:
        asObjectReadOnlyLongProperty
        结果
        新的 ObjectProperty
        从以下版本开始:
        JavaFX 8.0