Class SpinnerValueFactory.DoubleSpinnerValueFactory

  • Enclosing class:
    SpinnerValueFactory<T>


    public static class SpinnerValueFactory.DoubleSpinnerValueFactory
    extends SpinnerValueFactory<Double>
    A SpinnerValueFactory implementation designed to iterate through double values.

    Note that the default converter is implemented simply as shown below, which may be adequate in many cases, but it is important for users to ensure that this suits their needs (and adjust when necessary). The main point to note is that this StringConverter embeds within it a DecimalFormat instance that shows the Double to two decimal places. This is used for both the toString and fromString methods:

     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);
             }
         }
     });
    Since:
    JavaFX 8u40
    • Constructor Detail

      • DoubleSpinnerValueFactory

        public DoubleSpinnerValueFactory​(double min,
                                         double max)
        Constructs a new DoubleSpinnerValueFactory that sets the initial value to be equal to the min value, and a default amountToStepBy of one.
        Parameters:
        min - The minimum allowed double value for the Spinner.
        max - The maximum allowed double value for the Spinner.
      • DoubleSpinnerValueFactory

        public DoubleSpinnerValueFactory​(double min,
                                         double max,
                                         double initialValue)
        Constructs a new DoubleSpinnerValueFactory with a default amountToStepBy of one.
        Parameters:
        min - The minimum allowed double value for the Spinner.
        max - The maximum allowed double value for the Spinner.
        initialValue - The value of the Spinner when first instantiated, must be within the bounds of the min and max arguments, or else the min value will be used.
      • DoubleSpinnerValueFactory

        public DoubleSpinnerValueFactory​(double min,
                                         double max,
                                         double initialValue,
                                         double amountToStepBy)
        Constructs a new DoubleSpinnerValueFactory.
        Parameters:
        min - The minimum allowed double value for the Spinner.
        max - The maximum allowed double value for the Spinner.
        initialValue - The value of the Spinner when first instantiated, must be within the bounds of the min and max arguments, or else the min value will be used.
        amountToStepBy - The amount to increment or decrement by, per step.
    • Method Detail

      • setMin

        public final void setMin​(double value)
        Sets the value of the property min.
        Property description:
        * Properties * *
      • getMin

        public final double getMin​()
        Gets the value of the property min.
        Property description:
        * Properties * *
      • minProperty

        public final DoubleProperty minProperty​()
        Sets the minimum allowable value for this value factory
        Returns:
        the minimum allowable value for this value factory
      • setMax

        public final void setMax​(double value)
        Sets the value of the property max.
        Property description:
        Sets the maximum allowable value for this value factory
      • getMax

        public final double getMax​()
        Gets the value of the property max.
        Property description:
        Sets the maximum allowable value for this value factory
      • setAmountToStepBy

        public final void setAmountToStepBy​(double value)
        Sets the value of the property amountToStepBy.
        Property description:
        Sets the amount to increment or decrement by, per step.
      • getAmountToStepBy

        public final double getAmountToStepBy​()
        Gets the value of the property amountToStepBy.
        Property description:
        Sets the amount to increment or decrement by, per step.
      • decrement

        public void decrement​(int steps)
        Attempts to decrement the value by the given number of steps.
        Specified by:
        decrement in class SpinnerValueFactory<Double>
        Parameters:
        steps - The number of decrements that should be performed on the value.
      • increment

        public void increment​(int steps)
        Attempts to omcrement the value by the given number of steps.
        Specified by:
        increment in class SpinnerValueFactory<Double>
        Parameters:
        steps - The number of increments that should be performed on the value.