Class Spinner<T>
- Type Parameters:
-
T- The type of all values that can be iterated through in the Spinner. Common types include Integer and String.
- All Implemented Interfaces:
-
Styleable,EventTarget,Skinnable
public class Spinner<T>
extends Control wrapping and simpler specification of 'infinite' data models (the SpinnerValueFactory, rather than using a ObservableList data model like many other JavaFX UI controls. 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.IntegerSpinnerValueFactorySpinnerValueFactory.DoubleSpinnerValueFactorySpinnerValueFactory.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.
Example:
Spinner spinner = new Spinner(0, 10, 5);
- Since:
- JavaFX 8u40
- See Also:
SpinnerValueFactory
Property Summary
| Type | Property | Description |
|---|---|---|
BooleanProperty | editable | The editable property is used to specify whether user input is able to be typed into the Spinner editor. |
ReadOnlyObjectProperty<TextField> | editor | The editor used by the Spinner control. |
ObjectProperty<Duration> | initialDelay | The duration that the mouse has to be pressed on an arrow button before the next value steps. |
StringProperty | promptText | The prompt text to display in the Spinner, or null if no prompt text is displayed. |
ObjectProperty<Duration> | repeatDelay | The duration that the mouse has to be pressed for each successive step after the first value steps. |
ObjectProperty<SpinnerValueFactory<T>> | valueFactory | The value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable. |
ReadOnlyObjectProperty<T> | value | The value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory value property. |
Properties declared in class javafx.scene.control.Control
contextMenu, skin, tooltip
Properties declared in class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
Properties declared in class javafx.scene.Parent
needsLayout
Properties declared in class javafx.scene.Node
accessibleHelp, 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, viewOrder, visible
Field Summary
| Modifier and Type | Field | Description |
|---|---|---|
static String | STYLE_CLASS_ARROWS_ON_LEFT_HORIZONTAL | The arrows are placed on the left of the Spinner, pointing horizontally (i.e. |
static String | STYLE_CLASS_ARROWS_ON_LEFT_VERTICAL | The arrows are placed on the left of the Spinner, pointing vertically (i.e. |
static String | STYLE_CLASS_ARROWS_ON_RIGHT_HORIZONTAL | The arrows are placed on the right of the Spinner, pointing horizontally (i.e. |
static String | STYLE_CLASS_SPLIT_ARROWS_HORIZONTAL | The decrement arrow is placed on the left of the Spinner, and the increment on the right. |
static String | STYLE_CLASS_SPLIT_ARROWS_VERTICAL | The arrows are placed above and beneath the spinner, stretching to take the entire width. |
Fields declared in class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZE
Fields declared in class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
Constructor Summary
| Constructor | Description |
|---|---|
Spinner() | 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<T> items) | Creates a Spinner instance with the value factory set to be an instance of SpinnerValueFactory.ListSpinnerValueFactory. |
Spinner(SpinnerValueFactory<T> valueFactory) | Creates a Spinner instance with the given value factory set. |
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
void | cancelEdit() | |
void | commitValue() | |
void | decrement() | Attempts to decrement the value factory by one step, by calling the SpinnerValueFactory.decrement(int) method with an argument of one. |
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. |
BooleanProperty | editableProperty() | The editable property is used to specify whether user input is able to be typed into the Spinner editor. |
ReadOnlyObjectProperty<TextField> | editorProperty() | The editor used by the Spinner control. |
static List<CssMetaData<? extends Styleable,?>> | getClassCssMetaData() | |
TextField | getEditor() | Gets the value of the property editor. |
Duration | getInitialDelay() | Gets the value of the property initialDelay. |
String | getPromptText() | Gets the value of the property promptText. |
Duration | getRepeatDelay() | Gets the value of the property repeatDelay. |
T | getValue() | Gets the value of the property value. |
SpinnerValueFactory<T> | getValueFactory() | Gets the value of the property valueFactory. |
void | increment() | Attempts to increment the value factory by one step, by calling the SpinnerValueFactory.increment(int) method with an argument of one. |
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. |
ObjectProperty<Duration> | initialDelayProperty() | The duration that the mouse has to be pressed on an arrow button before the next value steps. |
boolean | isEditable() | Gets the value of the property editable. |
StringProperty | promptTextProperty() | The prompt text to display in the Spinner, or null if no prompt text is displayed. |
ObjectProperty<Duration> | repeatDelayProperty() | The duration that the mouse has to be pressed for each successive step after the first value steps. |
void | setEditable(boolean value) | Sets the value of the property editable. |
void | setInitialDelay(Duration value) | Sets the value of the property initialDelay. |
void | setPromptText(String value) | Sets the value of the property promptText. |
void | setRepeatDelay(Duration value) | Sets the value of the property repeatDelay. |
void | setValueFactory(SpinnerValueFactory<T> value) | Sets the value of the property valueFactory. |
ObjectProperty<SpinnerValueFactory<T>> | valueFactoryProperty() | The value factory is the model behind the JavaFX Spinner control - without a value factory installed a Spinner is unusable. |
ReadOnlyObjectProperty<T> | valueProperty() | The value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory value property. |
Methods declared in class javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, createDefaultSkin, getContextMenu, getControlCssMetaData, getCssMetaData, getInitialFocusTraversable, getTooltip, isResizable, setContextMenu, setTooltip, skinProperty, tooltipProperty
Methods declared in class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computePrefHeight, computePrefWidth, 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, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
Methods declared in class javafx.scene.Parent
getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
Methods declared in class javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, 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, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, 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, lookup, 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, queryAccessibleAttribute, 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, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods declared in interface javafx.css.Styleable
getStyleableNode, getStyleClass
Property Details
value
public final ReadOnlyObjectProperty<T> valueProperty
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()
valueFactory
public final ObjectProperty<SpinnerValueFactory<T>> valueFactoryProperty
- Representing the current state of the
value, -
Incrementinganddecrementingthe value, with one or more steps per call, -
Convertingtext input from the user (via the Spinnereditor, - Converting
objects to user-readable stringsfor display on screen
- See Also:
-
getValueFactory(),setValueFactory(SpinnerValueFactory)
editable
public final BooleanProperty editableProperty
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.- Default value:
false- See Also:
-
isEditable(),setEditable(boolean)
editor
public final ReadOnlyObjectProperty<TextField> editorProperty
- See Also:
getEditor()
promptText
public final StringProperty promptTextProperty
Spinner, or null if no prompt text is displayed.- Default value:
- Empty string
- Since:
- 9
- See Also:
-
getPromptText(),setPromptText(String)
initialDelay
public final ObjectProperty<Duration> initialDelayProperty
repeat delay.- Default value:
- 300ms
- Since:
- 11
- See Also:
-
getInitialDelay(),setInitialDelay(Duration)
repeatDelay
public final ObjectProperty<Duration> repeatDelayProperty
initial delay.- Default value:
- 60ms
- Since:
- 11
- See Also:
-
getRepeatDelay(),setRepeatDelay(Duration)
Field Details
STYLE_CLASS_ARROWS_ON_RIGHT_HORIZONTAL
public static final String STYLE_CLASS_ARROWS_ON_RIGHT_HORIZONTAL
- See Also:
- Constant Field Values
STYLE_CLASS_ARROWS_ON_LEFT_VERTICAL
public static final String STYLE_CLASS_ARROWS_ON_LEFT_VERTICAL
- See Also:
- Constant Field Values
STYLE_CLASS_ARROWS_ON_LEFT_HORIZONTAL
public static final String STYLE_CLASS_ARROWS_ON_LEFT_HORIZONTAL
- See Also:
- Constant Field Values
STYLE_CLASS_SPLIT_ARROWS_VERTICAL
public static final String STYLE_CLASS_SPLIT_ARROWS_VERTICAL
- See Also:
- Constant Field Values
STYLE_CLASS_SPLIT_ARROWS_HORIZONTAL
public static final String STYLE_CLASS_SPLIT_ARROWS_HORIZONTAL
- See Also:
- Constant Field Values
Constructor Details
Spinner
public Spinner()
Spinner
public Spinner(int min, int max, int initialValue)
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<Integer>.- 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.
Spinner
public Spinner(int min, int max, int initialValue, int amountToStepBy)
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<Integer>.- 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.
Spinner
public Spinner(double min, double max, double initialValue)
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<Double>.- 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.
Spinner
public Spinner(double min, double max, double initialValue, double amountToStepBy)
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<Double>.- 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.
Spinner
public Spinner(ObservableList<T> items)
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.
Spinner
public Spinner(SpinnerValueFactory<T> valueFactory)
- Parameters:
-
valueFactory- Thevalue factoryto use.
Method Details
increment
public void increment()
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 callinggetValueFactory()is null.
increment
public void increment(int steps)
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 callinggetValueFactory()is null.
decrement
public void decrement()
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 callinggetValueFactory()is null.
decrement
public void decrement(int steps)
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 callinggetValueFactory()is null.
commitValue
public final void commitValue()
editable, calling this method will attempt to commit the current text and convert it to a value.- Since:
- 9
cancelEdit
public final void cancelEdit()
editable, calling this method will attempt to replace the editor text with the last committed value.- Since:
- 9
getValue
public final T getValue()
- Property description:
- The value property on Spinner is a read-only property, as it is bound to the SpinnerValueFactory
value property. Should thevalue factorychange, 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);
valueProperty
public final ReadOnlyObjectProperty<T> valueProperty()
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()
setValueFactory
public final void setValueFactory(SpinnerValueFactory<T> value)
- 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, -
Incrementinganddecrementingthe value, with one or more steps per call, -
Convertingtext input from the user (via the Spinnereditor, - Converting
objects to user-readable stringsfor display on screen
- Representing the current state of the
getValueFactory
public final SpinnerValueFactory<T> getValueFactory()
- 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, -
Incrementinganddecrementingthe value, with one or more steps per call, -
Convertingtext input from the user (via the Spinnereditor, - Converting
objects to user-readable stringsfor display on screen
- Representing the current state of the
valueFactoryProperty
public final ObjectProperty<SpinnerValueFactory<T>> valueFactoryProperty()
- Representing the current state of the
value, -
Incrementinganddecrementingthe value, with one or more steps per call, -
Convertingtext input from the user (via the Spinnereditor, - Converting
objects to user-readable stringsfor display on screen
- See Also:
-
getValueFactory(),setValueFactory(SpinnerValueFactory)
setEditable
public final void setEditable(boolean value)
- 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 SpinnerValueFactoryconverterStringConverter.fromString(String)method. The returned value from this call (of type T) is then sent to theSpinnerValueFactory.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. - Default value:
false
isEditable
public final boolean isEditable()
- 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 SpinnerValueFactoryconverterStringConverter.fromString(String)method. The returned value from this call (of type T) is then sent to theSpinnerValueFactory.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. - Default value:
false
editableProperty
public final BooleanProperty editableProperty()
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.- Default value:
false- See Also:
-
isEditable(),setEditable(boolean)
editorProperty
public final ReadOnlyObjectProperty<TextField> editorProperty()
- See Also:
getEditor()
getEditor
public final TextField getEditor()
- Property description:
- The editor used by the Spinner control.
promptTextProperty
public final StringProperty promptTextProperty()
Spinner, or null if no prompt text is displayed.- Default value:
- Empty string
- Since:
- 9
- See Also:
-
getPromptText(),setPromptText(String)
getPromptText
public final String getPromptText()
- Property description:
- The prompt text to display in the
Spinner, ornullif no prompt text is displayed. - Default value:
- Empty string
- Since:
- 9
setPromptText
public final void setPromptText(String value)
- Property description:
- The prompt text to display in the
Spinner, ornullif no prompt text is displayed. - Default value:
- Empty string
- Since:
- 9
initialDelayProperty
public final ObjectProperty<Duration> initialDelayProperty()
repeat delay.- Default value:
- 300ms
- Since:
- 11
- See Also:
-
getInitialDelay(),setInitialDelay(Duration)
setInitialDelay
public final void setInitialDelay(Duration value)
- Property description:
- The duration that the mouse has to be pressed on an arrow button before the next value steps. Successive step duration is set using
repeat delay. - Default value:
- 300ms
- Since:
- 11
getInitialDelay
public final Duration getInitialDelay()
- Property description:
- The duration that the mouse has to be pressed on an arrow button before the next value steps. Successive step duration is set using
repeat delay. - Default value:
- 300ms
- Since:
- 11
repeatDelayProperty
public final ObjectProperty<Duration> repeatDelayProperty()
initial delay.- Default value:
- 60ms
- Since:
- 11
- See Also:
-
getRepeatDelay(),setRepeatDelay(Duration)
setRepeatDelay
public final void setRepeatDelay(Duration value)
- Property description:
- The duration that the mouse has to be pressed for each successive step after the first value steps. Initial step duration is set using
initial delay. - Default value:
- 60ms
- Since:
- 11
getRepeatDelay
public final Duration getRepeatDelay()
- Property description:
- The duration that the mouse has to be pressed for each successive step after the first value steps. Initial step duration is set using
initial delay. - Default value:
- 60ms
- Since:
- 11
getClassCssMetaData
public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.