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

Class IntegerProperty

    • 构造方法详细信息

      • IntegerProperty

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

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

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

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

           IntegerProperty integerProperty = new SimpleIntegerProperty(1);
           ObjectProperty<Integer> objectProperty = new SimpleObjectProperty<>(2);
        
           // Need to keep the reference as bidirectional binding uses weak references
           IntegerProperty objectAsInteger = IntegerProperty.integerProperty(objectProperty);
        
           integerProperty.bindBidirectional(objectAsInteger);
        
         
        另一种方法是使用asObject()方法将IntegerProperty转换为ObjectProperty。

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

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

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

        可以将ObjectProperty绑定到IntegerProperty。

           IntegerProperty integerProperty = new SimpleIntegerProperty(1);
           ObjectProperty<Integer> objectProperty = new SimpleObjectProperty<>(2);
        
           objectProperty.bind(integerProperty.asObject());
         
        重写:
        asObjectReadOnlyIntegerProperty
        结果
        新的 ObjectProperty
        从以下版本开始:
        JavaFX 8.0