@DefaultProperty(value="items") public class ChoiceBox<T> extends Control
By default, the ChoiceBox has no item selected unless otherwise specified. Although the ChoiceBox will only allow a user to select from the predefined list, it is possible for the developer to specify the selected item to be something other than what is available in the predefined list. This is required for several important use cases.
It means configuration of the ChoiceBox is order independent. You may either specify the items and then the selected item, or you may specify the selected item and then the items. Either way will function correctly.
ChoiceBox item selection is handled by
SelectionModel
As with ListView and ComboBox, it is possible to modify the
SelectionModel
that is used,
although this is likely to be rarely changed. ChoiceBox supports only a
single selection model, hence the default used is a SingleSelectionModel
.
import javafx.scene.control.ChoiceBox; ChoiceBox cb = new ChoiceBox(); cb.getItems().addAll("item1", "item2", "item3");
Type | Property and Description |
---|---|
ObjectProperty<StringConverter<T>> |
converter
Allows a way to specify how to represent objects in the items list.
|
ObjectProperty<ObservableList<T>> |
items
The items to display in the choice box.
|
ObjectProperty<EventHandler<ActionEvent>> |
onAction
The ChoiceBox action, which is invoked whenever the ChoiceBox
value property is changed. |
ObjectProperty<EventHandler<Event>> |
onHidden
Called just after the
ChoiceBox popup has been hidden. |
ObjectProperty<EventHandler<Event>> |
onHiding
Called just prior to the
ChoiceBox popup being hidden. |
ObjectProperty<EventHandler<Event>> |
onShowing
Called just prior to the
ChoiceBox popup being shown. |
ObjectProperty<EventHandler<Event>> |
onShown
Called just after the
ChoiceBox popup is shown. |
ObjectProperty<SingleSelectionModel<T>> |
selectionModel
The selection model for the ChoiceBox.
|
ReadOnlyBooleanProperty |
showing
Indicates whether the drop down is displaying the list of choices to the
user.
|
ObjectProperty<T> |
value
The value of this ChoiceBox is defined as the selected item in the ChoiceBox
selection model.
|
contextMenu, skin, tooltip
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
needsLayout
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, visible
Modifier and Type | Field and Description |
---|---|
static EventType<Event> |
ON_HIDDEN
Called when the ChoiceBox popup has been hidden.
|
static EventType<Event> |
ON_HIDING
Called when the ChoiceBox popup will be hidden.
|
static EventType<Event> |
ON_SHOWING
Called prior to the ChoiceBox showing its popup after the user
has clicked or otherwise interacted with the ChoiceBox.
|
static EventType<Event> |
ON_SHOWN
Called after the ChoiceBox has shown its popup.
|
USE_COMPUTED_SIZE, USE_PREF_SIZE
BASELINE_OFFSET_SAME_AS_HEIGHT
Constructor and Description |
---|
ChoiceBox()
Create a new ChoiceBox which has an empty list of items.
|
ChoiceBox(ObservableList<T> items)
Create a new ChoiceBox with the given set of items.
|
Modifier and Type | Method and Description |
---|---|
ObjectProperty<StringConverter<T>> |
converterProperty()
Allows a way to specify how to represent objects in the items list.
|
protected Skin<?> |
createDefaultSkin()
Create a new instance of the default skin for this control.
|
void |
executeAccessibleAction(AccessibleAction action,
Object... parameters)
This method is called by the assistive technology to request the action
indicated by the argument should be executed.
|
StringConverter<T> |
getConverter()
Gets the value of the property converter.
|
ObservableList<T> |
getItems()
Gets the value of the property items.
|
EventHandler<ActionEvent> |
getOnAction()
Gets the value of the property onAction.
|
EventHandler<Event> |
getOnHidden()
Gets the value of the property onHidden.
|
EventHandler<Event> |
getOnHiding()
Gets the value of the property onHiding.
|
EventHandler<Event> |
getOnShowing()
Gets the value of the property onShowing.
|
EventHandler<Event> |
getOnShown()
Gets the value of the property onShown.
|
SingleSelectionModel<T> |
getSelectionModel()
Gets the value of the property selectionModel.
|
T |
getValue()
Gets the value of the property value.
|
void |
hide()
Closes the list of choices.
|
boolean |
isShowing()
Gets the value of the property showing.
|
ObjectProperty<ObservableList<T>> |
itemsProperty()
The items to display in the choice box.
|
ObjectProperty<EventHandler<ActionEvent>> |
onActionProperty()
The ChoiceBox action, which is invoked whenever the ChoiceBox
value property is changed. |
ObjectProperty<EventHandler<Event>> |
onHiddenProperty()
Called just after the
ChoiceBox popup has been hidden. |
ObjectProperty<EventHandler<Event>> |
onHidingProperty()
Called just prior to the
ChoiceBox popup being hidden. |
ObjectProperty<EventHandler<Event>> |
onShowingProperty()
Called just prior to the
ChoiceBox popup being shown. |
ObjectProperty<EventHandler<Event>> |
onShownProperty()
Called just after the
ChoiceBox popup is shown. |
Object |
queryAccessibleAttribute(AccessibleAttribute attribute,
Object... parameters)
*
Accessibility handling *
*
|
ObjectProperty<SingleSelectionModel<T>> |
selectionModelProperty()
The selection model for the ChoiceBox.
|
void |
setConverter(StringConverter<T> value)
Sets the value of the property converter.
|
void |
setItems(ObservableList<T> value)
Sets the value of the property items.
|
void |
setOnAction(EventHandler<ActionEvent> value)
Sets the value of the property onAction.
|
void |
setOnHidden(EventHandler<Event> value)
Sets the value of the property onHidden.
|
void |
setOnHiding(EventHandler<Event> value)
Sets the value of the property onHiding.
|
void |
setOnShowing(EventHandler<Event> value)
Sets the value of the property onShowing.
|
void |
setOnShown(EventHandler<Event> value)
Sets the value of the property onShown.
|
void |
setSelectionModel(SingleSelectionModel<T> value)
Sets the value of the property selectionModel.
|
void |
setValue(T value)
Sets the value of the property value.
|
void |
show()
Opens the list of choices.
|
ReadOnlyBooleanProperty |
showingProperty()
Indicates whether the drop down is displaying the list of choices to the
user.
|
ObjectProperty<T> |
valueProperty()
The value of this ChoiceBox is defined as the selected item in the ChoiceBox
selection model.
|
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, getBaselineOffset, getClassCssMetaData, getContextMenu, getControlCssMetaData, getCssMetaData, getSkin, getTooltip, isResizable, layoutChildren, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
backgroundProperty, 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, widthProperty
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
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, 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, visibleProperty
public final ObjectProperty<SingleSelectionModel<T>> selectionModelProperty
public final ReadOnlyBooleanProperty showingProperty
isShowing()
public final ObjectProperty<ObservableList<T>> itemsProperty
getItems()
,
setItems(ObservableList)
public ObjectProperty<StringConverter<T>> converterProperty
javafx.util.converter
package can be set.getConverter()
,
setConverter(StringConverter)
public ObjectProperty<T> valueProperty
getValue()
,
setValue(T)
public final ObjectProperty<EventHandler<ActionEvent>> onActionProperty
value
property is changed. This
may be due to the value property being programmatically changed or when the
user selects an item in a popup menu.getOnAction()
,
setOnAction(EventHandler)
public final ObjectProperty<EventHandler<Event>> onShowingProperty
ChoiceBox
popup being shown.getOnShowing()
,
setOnShowing(EventHandler)
public final ObjectProperty<EventHandler<Event>> onShownProperty
ChoiceBox
popup is shown.getOnShown()
,
setOnShown(EventHandler)
public final ObjectProperty<EventHandler<Event>> onHidingProperty
ChoiceBox
popup being hidden.getOnHiding()
,
setOnHiding(EventHandler)
public final ObjectProperty<EventHandler<Event>> onHiddenProperty
ChoiceBox
popup has been hidden.getOnHidden()
,
setOnHidden(EventHandler)
public static final EventType<Event> ON_SHOWING
public static final EventType<Event> ON_SHOWN
public static final EventType<Event> ON_HIDING
public ChoiceBox()
public ChoiceBox(ObservableList<T> items)
items
- public final void setSelectionModel(SingleSelectionModel<T> value)
public final SingleSelectionModel<T> getSelectionModel()
public final ObjectProperty<SingleSelectionModel<T>> selectionModelProperty()
public final boolean isShowing()
public final ReadOnlyBooleanProperty showingProperty()
isShowing()
public final void setItems(ObservableList<T> value)
public final ObservableList<T> getItems()
public final ObjectProperty<ObservableList<T>> itemsProperty()
getItems()
,
setItems(ObservableList)
public ObjectProperty<StringConverter<T>> converterProperty()
javafx.util.converter
package can be set.getConverter()
,
setConverter(StringConverter)
public final void setConverter(StringConverter<T> value)
javafx.util.converter
package can be set.public final StringConverter<T> getConverter()
javafx.util.converter
package can be set.public ObjectProperty<T> valueProperty()
getValue()
,
setValue(T)
public final void setValue(T value)
public final T getValue()
public final ObjectProperty<EventHandler<ActionEvent>> onActionProperty()
value
property is changed. This
may be due to the value property being programmatically changed or when the
user selects an item in a popup menu.getOnAction()
,
setOnAction(EventHandler)
public final void setOnAction(EventHandler<ActionEvent> value)
value
property is changed. This
may be due to the value property being programmatically changed or when the
user selects an item in a popup menu.public final EventHandler<ActionEvent> getOnAction()
value
property is changed. This
may be due to the value property being programmatically changed or when the
user selects an item in a popup menu.public final ObjectProperty<EventHandler<Event>> onShowingProperty()
ChoiceBox
popup being shown.getOnShowing()
,
setOnShowing(EventHandler)
public final void setOnShowing(EventHandler<Event> value)
ChoiceBox
popup being shown.public final EventHandler<Event> getOnShowing()
ChoiceBox
popup being shown.public final ObjectProperty<EventHandler<Event>> onShownProperty()
ChoiceBox
popup is shown.getOnShown()
,
setOnShown(EventHandler)
public final void setOnShown(EventHandler<Event> value)
ChoiceBox
popup is shown.public final EventHandler<Event> getOnShown()
ChoiceBox
popup is shown.public final ObjectProperty<EventHandler<Event>> onHidingProperty()
ChoiceBox
popup being hidden.getOnHiding()
,
setOnHiding(EventHandler)
public final void setOnHiding(EventHandler<Event> value)
ChoiceBox
popup being hidden.public final EventHandler<Event> getOnHiding()
ChoiceBox
popup being hidden.public final ObjectProperty<EventHandler<Event>> onHiddenProperty()
ChoiceBox
popup has been hidden.getOnHidden()
,
setOnHidden(EventHandler)
public final void setOnHidden(EventHandler<Event> value)
ChoiceBox
popup has been hidden.public final EventHandler<Event> getOnHidden()
ChoiceBox
popup has been hidden.public void show()
public void hide()
protected Skin<?> createDefaultSkin()
-fx-skin
or set explicitly in a sub-class with setSkin(...)
.createDefaultSkin
in class Control
public Object queryAccessibleAttribute(AccessibleAttribute attribute, Object... parameters)
queryAccessibleAttribute
in class Control
attribute
- the requested attributeparameters
- optional list of parametersAccessibleAttribute
public void executeAccessibleAction(AccessibleAction action, Object... parameters)
Node
This method is commonly overridden by subclasses to implement
action that are required for a specific role.
If a particular action is not handled, the super class implementation
must be called.
executeAccessibleAction
in class Control
action
- the action to executeparameters
- optional list of parametersAccessibleAction
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2008, 2020, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.