A Spinner's sequence value is defined by its SpinnerValueFactory. The value factory can be specified as a constructor argument and changed with the value factory property. SpinnerValueFactory classes for some common types are provided with JavaFX, including:
- SpinnerValueFactory.IntegerSpinnerValueFactory
- SpinnerValueFactory.DoubleSpinnerValueFactory
- SpinnerValueFactory.ListSpinnerValueFactory
A Spinner has a TextField child component that is responsible for displaying and potentially changing the current value of the Spinner, which is called the editor. By default the Spinner is non-editable, but input can be accepted if the editable property is set to true. The Spinner editor stays in sync with the value factory by listening for changes to the value property of the value factory. If the user has changed the value displayed in the editor it is possible for the Spinner value to differ from that of the editor. To make sure the model has the same value as the editor, the user must commit the edit using the Enter key.Since:JavaFX 8u40See Also:SpinnerValueFactoryProperty SummaryAll Methods Instance Methods Concrete Methods TypeProperty and DescriptionBooleanPropertyeditableThe editable property is used to specify whether user input is able to be typed into the Spinner editor.ReadOnlyObjectPropertyeditorThe editor used by the Spinner control.ObjectPropertyvalueFactoryThe value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable.ReadOnlyObjectPropertyvalueThe value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory value property.Properties inherited from class javafx.scene.control.ControlcontextMenu, skin, tooltipProperties inherited from class javafx.scene.layout.Regionbackground, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, widthProperties inherited from class javafx.scene.ParentneedsLayoutProperties inherited from class javafx.scene.NodeaccessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, visibleField SummaryFields Modifier and TypeField and Descriptionstatic StringSTYLE_CLASS_ARROWS_ON_LEFT_HORIZONTALThe arrows are placed on the left of the Spinner, pointing horizontally (i.e.static StringSTYLE_CLASS_ARROWS_ON_LEFT_VERTICALThe arrows are placed on the left of the Spinner, pointing vertically (i.e.static StringSTYLE_CLASS_ARROWS_ON_RIGHT_HORIZONTALThe arrows are placed on the right of the Spinner, pointing horizontally (i.e.static StringSTYLE_CLASS_SPLIT_ARROWS_HORIZONTALThe decrement arrow is placed on the left of the Spinner, and the increment on the right.static StringSTYLE_CLASS_SPLIT_ARROWS_VERTICALThe arrows are placed above and beneath the spinner, stretching to take the entire width.Fields inherited from class javafx.scene.layout.RegionUSE_COMPUTED_SIZE, USE_PREF_SIZEFields inherited from class javafx.scene.NodeBASELINE_OFFSET_SAME_AS_HEIGHTConstructor SummaryConstructors Constructor and DescriptionSpinner()Constructs a default Spinner instance, with the default 'spinner' style class and a non-editable editor.Spinner(double min, double max, double initialValue)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.DoubleSpinnerValueFactory.Spinner(double min, double max, double initialValue, double amountToStepBy)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.DoubleSpinnerValueFactory.Spinner(int min, int max, int initialValue)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.IntegerSpinnerValueFactory.Spinner(int min, int max, int initialValue, int amountToStepBy)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.IntegerSpinnerValueFactory.Spinner(ObservableList items)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.ListSpinnerValueFactory.Spinner(SpinnerValueFactory valueFactory)Creates a Spinner instance with the given value factory set.Method SummaryAll Methods Instance Methods Concrete Methods Modifier and TypeMethod and Descriptionprotected SkincreateDefaultSkin()Create a new instance of the default skin for this control.voiddecrement()Attempts to decrement the value factory by one step, by calling the SpinnerValueFactory.decrement(int) method with an argument of one.voiddecrement(int steps)Attempts to decrement the value factory by the given number of steps, by calling the SpinnerValueFactory.decrement(int) method and forwarding the steps argument to it.BooleanPropertyeditableProperty()The editable property is used to specify whether user input is able to be typed into the Spinner editor.ReadOnlyObjectPropertyeditorProperty()The editor used by the Spinner control.voidexecuteAccessibleAction(AccessibleAction action, Object... parameters)This method is called by the assistive technology to request the action indicated by the argument should be executed.TextFieldgetEditor()Gets the value of the property editor.TgetValue()Gets the value of the property value.SpinnerValueFactorygetValueFactory()Gets the value of the property valueFactory.voidincrement()Attempts to increment the value factory by one step, by calling the SpinnerValueFactory.increment(int) method with an argument of one.voidincrement(int steps)Attempts to increment the value factory by the given number of steps, by calling the SpinnerValueFactory.increment(int) method and forwarding the steps argument to it.booleanisEditable()Gets the value of the property editable.ObjectqueryAccessibleAttribute(AccessibleAttribute attribute, Object... parameters)* Accessibility handling * *voidsetEditable(boolean value)Sets the value of the property editable.voidsetValueFactory(SpinnerValueFactory value)Sets the value of the property valueFactory.ObjectPropertyvalueFactoryProperty()The value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable.ReadOnlyObjectPropertyvalueProperty()The value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory value property.Methods inherited from class javafx.scene.control.ControlcomputeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, getBaselineOffset, getClassCssMetaData, getContextMenu, getControlCssMetaData, getCssMetaData, getSkin, getTooltip, isResizable, layoutChildren, setContextMenu, setSkin, setTooltip, skinProperty, tooltipPropertyMethods inherited from class javafx.scene.layout.RegionbackgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapSize, snapSpace, snapToPixelProperty, widthPropertyMethods inherited from class javafx.scene.ParentgetChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBoundsMethods inherited from class javafx.scene.NodeaccessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, visiblePropertyMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitProperty Detailvaluepublic final ReadOnlyObjectProperty valuePropertyThe value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory value property. Should the value factory change, this value property will be unbound from the old value factory and bound to the new one. If developers wish to modify the value property, they may do so with code in the following form: Object newValue = ...; spinner.getValueFactory().setValue(newValue); See Also:getValue()valueFactorypublic final ObjectProperty valueFactoryPropertyThe value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable. It is the role of the value factory to handle almost all aspects of the Spinner, including:
- Representing the current state of the value,
- Incrementing and decrementing the value, with one or more steps per call,
- Converting text input from the user (via the Spinner editor,
- Converting objects to user-readable strings for display on screen
See Also:getValueFactory(), setValueFactory(SpinnerValueFactory)editablepublic final BooleanProperty editablePropertyThe editable property is used to specify whether user input is able to be typed into the Spinner editor. If editable is true, user input will be received once the user types and presses the Enter key. At this point the input is passed to the SpinnerValueFactory converter StringConverter.fromString(String) method. The returned value from this call (of type T) is then sent to the SpinnerValueFactory.setValue(Object) method. If the value is valid, it will remain as the value. If it is invalid, the value factory will need to react accordingly and back out this change.See Also:isEditable(), setEditable(boolean)editorpublic final ReadOnlyObjectProperty editorPropertyThe editor used by the Spinner control.See Also:getEditor()Field DetailSTYLE_CLASS_ARROWS_ON_RIGHT_HORIZONTALpublic static final String STYLE_CLASS_ARROWS_ON_RIGHT_HORIZONTALThe arrows are placed on the right of the Spinner, pointing horizontally (i.e. left and right).See Also:Constant Field ValuesSTYLE_CLASS_ARROWS_ON_LEFT_VERTICALpublic static final String STYLE_CLASS_ARROWS_ON_LEFT_VERTICALThe arrows are placed on the left of the Spinner, pointing vertically (i.e. up and down).See Also:Constant Field ValuesSTYLE_CLASS_ARROWS_ON_LEFT_HORIZONTALpublic static final String STYLE_CLASS_ARROWS_ON_LEFT_HORIZONTALThe arrows are placed on the left of the Spinner, pointing horizontally (i.e. left and right).See Also:Constant Field ValuesSTYLE_CLASS_SPLIT_ARROWS_VERTICALpublic static final String STYLE_CLASS_SPLIT_ARROWS_VERTICALThe arrows are placed above and beneath the spinner, stretching to take the entire width.See Also:Constant Field ValuesSTYLE_CLASS_SPLIT_ARROWS_HORIZONTALpublic static final String STYLE_CLASS_SPLIT_ARROWS_HORIZONTALThe decrement arrow is placed on the left of the Spinner, and the increment on the right.See Also:Constant Field ValuesConstructor DetailSpinnerpublic Spinner()Constructs a default Spinner instance, with the default 'spinner' style class and a non-editable editor.Spinnerpublic Spinner(int min, int max, int initialValue)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.IntegerSpinnerValueFactory. Note that if this constructor is called, the only valid generic type for the Spinner instance is Integer, i.e. Spinner.Parameters:min - The minimum allowed integer value for the Spinner.max - The maximum allowed integer 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.Spinnerpublic Spinner(int min, int max, int initialValue, int amountToStepBy)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.IntegerSpinnerValueFactory. Note that if this constructor is called, the only valid generic type for the Spinner instance is Integer, i.e. Spinner.Parameters:min - The minimum allowed integer value for the Spinner.max - The maximum allowed integer 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.Spinnerpublic Spinner(double min, double max, double initialValue)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.DoubleSpinnerValueFactory. Note that if this constructor is called, the only valid generic type for the Spinner instance is Double, i.e. Spinner.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.Spinnerpublic Spinner(double min, double max, double initialValue, double amountToStepBy)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.DoubleSpinnerValueFactory. Note that if this constructor is called, the only valid generic type for the Spinner instance is Double, i.e. Spinner.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.Spinnerpublic Spinner(ObservableList items)Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.ListSpinnerValueFactory. The Spinner value property will be set to the first element of the list, if an element exists, or null otherwise.Parameters:items - A list of items that will be stepped through in the Spinner.Spinnerpublic Spinner(SpinnerValueFactory valueFactory)Creates a Spinner instance with the given value factory set.Parameters:valueFactory - The value factory to use.Method Detailincrementpublic void increment()Attempts to increment the value factory by one step, by calling the SpinnerValueFactory.increment(int) method with an argument of one. If the value factory is null, an IllegalStateException is thrown.Throws:IllegalStateException - if the value factory returned by calling getValueFactory() is null.incrementpublic void increment(int steps)Attempts to increment the value factory by the given number of steps, by calling the SpinnerValueFactory.increment(int) method and forwarding the steps argument to it. If the value factory is null, an IllegalStateException is thrown.Parameters:steps - The number of increments that should be performed on the value.Throws:IllegalStateException - if the value factory returned by calling getValueFactory() is null.decrementpublic void decrement()Attempts to decrement the value factory by one step, by calling the SpinnerValueFactory.decrement(int) method with an argument of one. If the value factory is null, an IllegalStateException is thrown.Throws:IllegalStateException - if the value factory returned by calling getValueFactory() is null.decrementpublic void decrement(int steps)Attempts to decrement the value factory by the given number of steps, by calling the SpinnerValueFactory.decrement(int) method and forwarding the steps argument to it. If the value factory is null, an IllegalStateException is thrown.Parameters:steps - The number of decrements that should be performed on the value.Throws:IllegalStateException - if the value factory returned by calling getValueFactory() is null.createDefaultSkinprotected Skin createDefaultSkin()Create a new instance of the default skin for this control. This is called to create a skin for the control if no skin is provided via CSS -fx-skin or set explicitly in a sub-class with setSkin(...).Overrides:createDefaultSkin in class ControlReturns:new instance of default skin for this control. If null then the control will have no skin unless one is provided by css.getValuepublic final T getValue()Gets the value of the property value.Property description:The value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory value property. Should the value factory change, this value property will be unbound from the old value factory and bound to the new one. If developers wish to modify the value property, they may do so with code in the following form: Object newValue = ...; spinner.getValueFactory().setValue(newValue); valuePropertypublic final ReadOnlyObjectProperty valueProperty()The value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory value property. Should the value factory change, this value property will be unbound from the old value factory and bound to the new one. If developers wish to modify the value property, they may do so with code in the following form: Object newValue = ...; spinner.getValueFactory().setValue(newValue); See Also:getValue()setValueFactorypublic final void setValueFactory(SpinnerValueFactory value)Sets the value of the property valueFactory.Property description:The value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable. It is the role of the value factory to handle almost all aspects of the Spinner, including:
- Representing the current state of the value,
- Incrementing and decrementing the value, with one or more steps per call,
- Converting text input from the user (via the Spinner editor,
- Converting objects to user-readable strings for display on screen
getValueFactorypublic final SpinnerValueFactory getValueFactory()Gets the value of the property valueFactory.Property description:The value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable. It is the role of the value factory to handle almost all aspects of the Spinner, including:
- Representing the current state of the value,
- Incrementing and decrementing the value, with one or more steps per call,
- Converting text input from the user (via the Spinner editor,
- Converting objects to user-readable strings for display on screen
valueFactoryPropertypublic final ObjectProperty valueFactoryProperty()The value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable. It is the role of the value factory to handle almost all aspects of the Spinner, including:
- Representing the current state of the value,
- Incrementing and decrementing the value, with one or more steps per call,
- Converting text input from the user (via the Spinner editor,
- Converting objects to user-readable strings for display on screen
See Also:getValueFactory(), setValueFactory(SpinnerValueFactory)setEditablepublic final void setEditable(boolean value)Sets the value of the property editable.Property description:The editable property is used to specify whether user input is able to be typed into the Spinner editor. If editable is true, user input will be received once the user types and presses the Enter key. At this point the input is passed to the Spinner