Module  javafx.controls
软件包  javafx.scene.control

Class SpinnerValueFactory.DoubleSpinnerValueFactory

  • Enclosing class:
    SpinnerValueFactory < T >


    public static class SpinnerValueFactory.DoubleSpinnerValueFactory
    extends SpinnerValueFactory<Double>
    A SpinnerValueFactory实现,旨在迭代双重值。

    请注意,默认converter的实现方式简单如下,在许多情况下可能是足够的,但是对于用户来说,确保满足其需要(并在必要时进行调整)是很重要的。 要注意的一点是,这个StringConverter嵌入了一个DecimalFormat实例,显示了两到两位的小数位。 这用于toString和fromString方法:

      setConverter(new StringConverter<Double>() {
         private final DecimalFormat df = new DecimalFormat("#.##");
    
         @Override public String toString(Double value) {
             // If the specified value is null, return a zero-length String
             if (value == null) {
                 return "";
             }
    
             return df.format(value);
         }
    
         @Override public Double fromString(String value) {
             try {
                 // If the specified value is null or zero-length, return null
                 if (value == null) {
                     return null;
                 }
    
                 value = value.trim();
    
                 if (value.length() < 1) {
                     return null;
                 }
    
                 // Perform the requested parsing
                 return df.parse(value).doubleValue();
             } catch (ParseException ex) {
                 throw new RuntimeException(ex);
             }
         }
     }); 
    从以下版本开始:
    JavaFX 8u40
    • 构造方法详细信息

      • DoubleSpinnerValueFactory

        public DoubleSpinnerValueFactory​(double min,
                                         double max)
        构造一个新的DoubleSpinnerValueFactory,将初始值设置为等于最小值,默认 amountToStepBy
        参数
        min - Spinner的最小允许双重值。
        max - Spinner的最大允许双倍值。
      • DoubleSpinnerValueFactory

        public DoubleSpinnerValueFactory​(double min,
                                         double max,
                                         double initialValue)
        构造一个新的DoubleSpinnerValueFactory,默认 amountToStepBy
        参数
        min - Spinner的最小允许双倍值。
        max - Spinner允许的最大双重值。
        initialValue - 第一次实例化时,Spinner的值必须在min和max参数的范围内,否则将使用最小值。
      • DoubleSpinnerValueFactory

        public DoubleSpinnerValueFactory​(double min,
                                         double max,
                                         double initialValue,
                                         double amountToStepBy)
        构造一个新的DoubleSpinnerValueFactory。
        参数
        min - Spinner的最小允许双重值。
        max - Spinner的允许的最大双重值。
        initialValue - 第一次实例化时,微调器的值必须在min和max参数的范围内,否则将使用最小值。
        amountToStepBy - 每步骤增加或减少的量。
    • 方法详细信息

      • setMin

        public final void setMin​(double value)
        设置属性的值min。
        Property description:
        *属性* *
      • getMin

        public final double getMin​()
        获取属性的值min。
        Property description:
        *属性* *
      • minProperty

        public final DoubleProperty minProperty​()
        设置该值工厂的最小允许值
        结果
        该值工厂的最小允许值
      • setMax

        public final void setMax​(double value)
        设置属性max的值。
        Property description:
        设置该值工厂的最大允许值
      • getMax

        public final double getMax​()
        获取最大值的属性值。
        Property description:
        设置该值工厂的最大允许值
      • setAmountToStepBy

        public final void setAmountToStepBy​(double value)
        设置属性amountToStepBy的值。
        Property description:
        设置每步增加或减少的量。
      • getAmountToStepBy

        public final double getAmountToStepBy​()
        获取属性amountToStepBy的值。
        Property description:
        设置每步增加或减少的量。
      • decrement

        public void decrement​(int steps)
        尝试按照给定的步数减少 value
        Specified by:
        decrementSpinnerValueFactory<Double>
        参数
        steps - 应该对该值执行的减量的数量。
      • increment

        public void increment​(int steps)
        试图通过给定的步数来弥补 value
        Specified by:
        incrementSpinnerValueFactory<Double>
        参数
        steps - 应该对该值执行的增量数。