Spec-Zone.ru › OpenJavaFX 8
javafx.scene.control

Class ChoiceBox<T>

java.lang.Object
  • javafx.scene.Node
    • javafx.scene.Parent
      • javafx.scene.layout.Region
        • javafx.scene.control.Control
          • javafx.scene.control.ChoiceBox<T>

All Implemented Interfaces:

Styleable, EventTarget, Skinnable



@DefaultProperty(value="items")
public class ChoiceBox<T>
extends Control
The ChoiceBox is used for presenting the user with a relatively small set of predefined choices from which they may choose. The ChoiceBox, when "showing", will display to the user these choices and allow them to pick exactly one choice. When not showing, the current choice is displayed.

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");

Since:

JavaFX 2.0

  • Property Summary

    All MethodsInstance MethodsConcrete Methods
    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<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.
    • Properties inherited from class javafx.scene.control.Control

      contextMenu, skin, tooltip
    • Properties inherited from class javafx.scene.layout.Region

      background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
    • Properties inherited from class javafx.scene.Parent

      needsLayout
    • Properties inherited from 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, visible
  • Field Summary

    • Fields inherited from class javafx.scene.layout.Region

      USE_COMPUTED_SIZE, USE_PREF_SIZE
    • Fields inherited from class javafx.scene.Node

      BASELINE_OFFSET_SAME_AS_HEIGHT
  • Constructor Summary

    Constructors
    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.
  • Method Summary

    All MethodsInstance MethodsConcrete Methods
    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.
    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.
    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 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.
    • Methods inherited from class javafx.scene.control.Control

      computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, getBaselineOffset, getClassCssMetaData, getContextMenu, getControlCssMetaData, getCssMetaData, getSkin, getTooltip, isResizable, layoutChildren, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
    • Methods inherited from class javafx.scene.layout.Region

      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
    • Methods inherited from class javafx.scene.Parent

      getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
    • Methods inherited from 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, 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
    • Methods inherited from class java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Property Detail

    • selectionModel

      public final ObjectProperty<SingleSelectionModel<T>> selectionModelProperty
      The selection model for the ChoiceBox. Only a single choice can be made, hence, the ChoiceBox supports only a SingleSelectionModel. Generally, the main interaction with the selection model is to explicitly set which item in the items list should be selected, or to listen to changes in the selection to know which item has been chosen.

      See Also:

      getSelectionModel(), setSelectionModel(SingleSelectionModel)

    • showing

      public final ReadOnlyBooleanProperty showingProperty
      Indicates whether the drop down is displaying the list of choices to the user. This is a readonly property which should be manipulated by means of the #show and #hide methods.

      See Also:

      isShowing()

    • items

      public final ObjectProperty<ObservableList<T>> itemsProperty
      The items to display in the choice box. The selected item (as indicated in the selection model) must always be one of these items.

      See Also:

      getItems(), setItems(ObservableList)

    • converter

      public ObjectProperty<StringConverter<T>> converterProperty
      Allows a way to specify how to represent objects in the items list. When a StringConverter is set, the object toString method is not called and instead its toString(object T) is called, passing the objects in the items list. This is useful when using domain objects in a ChoiceBox as this property allows for customization of the representation. Also, any of the pre-built Converters available in the javafx.util.converter package can be set.

      Since:

      JavaFX 2.1

      See Also:

      getConverter(), setConverter(StringConverter)

    • value

      public ObjectProperty<T> valueProperty
      The value of this ChoiceBox is defined as the selected item in the ChoiceBox selection model. The valueProperty is synchronized with the selectedItem. This property allows for bi-directional binding of external properties to the ChoiceBox and updates the selection model accordingly.

      Since:

      JavaFX 2.1

      See Also:

      getValue(), setValue(T)

  • Constructor Detail

    • ChoiceBox

      public ChoiceBox()
      Create a new ChoiceBox which has an empty list of items.
    • ChoiceBox

      public ChoiceBox(ObservableList<T> items)
      Create a new ChoiceBox with the given set of items. Since it is observable, the content of this list may change over time and the ChoiceBox will be updated accordingly.

      Parameters:

      items -

  • Method Detail

    • setSelectionModel

      public final void setSelectionModel(SingleSelectionModel<T> value)
      Sets the value of the property selectionModel.

      Property description:

      The selection model for the ChoiceBox. Only a single choice can be made, hence, the ChoiceBox supports only a SingleSelectionModel. Generally, the main interaction with the selection model is to explicitly set which item in the items list should be selected, or to listen to changes in the selection to know which item has been chosen.

    • getSelectionModel

      public final SingleSelectionModel<T> getSelectionModel()
      Gets the value of the property selectionModel.

      Property description:

      The selection model for the ChoiceBox. Only a single choice can be made, hence, the ChoiceBox supports only a SingleSelectionModel. Generally, the main interaction with the selection model is to explicitly set which item in the items list should be selected, or to listen to changes in the selection to know which item has been chosen.

    • selectionModelProperty

      public final ObjectProperty<SingleSelectionModel<T>> selectionModelProperty()
      The selection model for the ChoiceBox. Only a single choice can be made, hence, the ChoiceBox supports only a SingleSelectionModel. Generally, the main interaction with the selection model is to explicitly set which item in the items list should be selected, or to listen to changes in the selection to know which item has been chosen.

      See Also:

      getSelectionModel(), setSelectionModel(SingleSelectionModel)

    • isShowing

      public final boolean isShowing()
      Gets the value of the property showing.

      Property description:

      Indicates whether the drop down is displaying the list of choices to the user. This is a readonly property which should be manipulated by means of the #show and #hide methods.

    • showingProperty

      public final ReadOnlyBooleanProperty showingProperty()
      Indicates whether the drop down is displaying the list of choices to the user. This is a readonly property which should be manipulated by means of the #show and #hide methods.

      See Also:

      isShowing()

    • setItems

      public final void setItems(ObservableList<T> value)
      Sets the value of the property items.

      Property description:

      The items to display in the choice box. The selected item (as indicated in the selection model) must always be one of these items.

    • getItems

      public final ObservableList<T> getItems()
      Gets the value of the property items.

      Property description:

      The items to display in the choice box. The selected item (as indicated in the selection model) must always be one of these items.

    • itemsProperty

      public final ObjectProperty<ObservableList<T>> itemsProperty()
      The items to display in the choice box. The selected item (as indicated in the selection model) must always be one of these items.

      See Also:

      getItems(), setItems(ObservableList)

    • converterProperty

      public ObjectProperty<StringConverter<T>> converterProperty()
      Allows a way to specify how to represent objects in the items list. When a StringConverter is set, the object toString method is not called and instead its toString(object T) is called, passing the objects in the items list. This is useful when using domain objects in a ChoiceBox as this property allows for customization of the representation. Also, any of the pre-built Converters available in the javafx.util.converter package can be set.

      Since:

      JavaFX 2.1

      See Also:

      getConverter(), setConverter(StringConverter)

    • setConverter

      public final void setConverter(StringConverter<T> value)
      Sets the value of the property converter.

      Property description:

      Allows a way to specify how to represent objects in the items list. When a StringConverter is set, the object toString method is not called and instead its toString(object T) is called, passing the objects in the items list. This is useful when using domain objects in a ChoiceBox as this property allows for customization of the representation. Also, any of the pre-built Converters available in the javafx.util.converter package can be set.

      Since:

      JavaFX 2.1

    • getConverter

      public final StringConverter<T> getConverter()
      Gets the value of the property converter.

      Property description:

      Allows a way to specify how to represent objects in the items list. When a StringConverter is set, the object toString method is not called and instead its toString(object T) is called, passing the objects in the items list. This is useful when using domain objects in a ChoiceBox as this property allows for customization of the representation. Also, any of the pre-built Converters available in the javafx.util.converter package can be set.

      Since:

      JavaFX 2.1

    • valueProperty

      public ObjectProperty<T> valueProperty()
      The value of this ChoiceBox is defined as the selected item in the ChoiceBox selection model. The valueProperty is synchronized with the selectedItem. This property allows for bi-directional binding of external properties to the ChoiceBox and updates the selection model accordingly.

      Since:

      JavaFX 2.1

      See Also:

      getValue(), setValue(T)

    • setValue

      public final void setValue(T value)
      Sets the value of the property value.

      Property description:

      The value of this ChoiceBox is defined as the selected item in the ChoiceBox selection model. The valueProperty is synchronized with the selectedItem. This property allows for bi-directional binding of external properties to the ChoiceBox and updates the selection model accordingly.

      Since:

      JavaFX 2.1

    • getValue

      public final T getValue()
      Gets the value of the property value.

      Property description:

      The value of this ChoiceBox is defined as the selected item in the ChoiceBox selection model. The valueProperty is synchronized with the selectedItem. This property allows for bi-directional binding of external properties to the ChoiceBox and updates the selection model accordingly.

      Since:

      JavaFX 2.1

    • show

      public void show()
      Opens the list of choices.
    • hide

      public void hide()
      Closes the list of choices.
    • createDefaultSkin

      protected 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 Control

      Returns:

      new instance of default skin for this control. If null then the control will have no skin unless one is provided by css.

    • queryAccessibleAttribute

      public Object queryAccessibleAttribute(AccessibleAttribute attribute,
                                             Object... parameters)
      * Accessibility handling * *

      Overrides:

      queryAccessibleAttribute in class Control

      Parameters:

      attribute - the requested attribute

      Returns:

      the value for the requested attribute

      See Also:

      AccessibleAttribute

    • executeAccessibleAction

      public void executeAccessibleAction(AccessibleAction action,
                                          Object... parameters)
      Description copied from class: Node
      This method is called by the assistive technology to request the action indicated by the argument should be executed.

      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.

      Overrides:

      executeAccessibleAction in class Control

      Parameters:

      action - the action to execute

      See Also:

      AccessibleAction

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API