Класс ChoiceBoxListCell<T>
- Type Parameters:
-
T- Тип элементов, содержащихся в ListView.
- All Implemented Interfaces:
-
Styleable,EventTarget,Skinnable
public class ChoiceBoxListCell<T> extends ListCell<T>
ListCell, которая отображает узел ChoiceBox внутри ячейки. По умолчанию, ChoiceBoxListCell отображается как Label при отсутствии редактирования и как ChoiceBox в режиме редактирования. ChoiceBox по умолчанию растягивается для заполнения всей ячейки списка.
Для создания ChoiceBoxListCell необходимо предоставить нуль или более элементов, которые будут отображаться пользователю при отображении меню ChoiceBox. Эти элементы должны быть того же типа, что и элементы последовательности ListView, так что при выборе они заменяют существующее значение в списке items.
- Since:
- JavaFX 2.2
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
final ObjectProperty<StringConverter<T>> |
converter |
Свойство StringConverter. |
Свойства, объявленные в классе javafx.scene.control.IndexedCell
index
Свойства, объявленные в классе javafx.scene.control.Labeled
alignment, contentDisplay, ellipsisString, font, graphic, graphicTextGap, labelPadding, lineSpacing, mnemonicParsing, textAlignment, textFill, textOverrun, text, underline, wrapText
Свойства, объявленные в классе javafx.scene.control.Control
contextMenu, skin, tooltip
Свойства, объявленные в классе javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
Свойства, объявленные в классе javafx.scene.Parent
needsLayout
Свойства, объявленные в классе javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, focusVisible, focusWithin, 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
Краткое описание полей
Поля, объявленные в классе javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZE
Поля, объявленные в классе javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ChoiceBoxListCell() |
Создаёт стандартный ChoiceBoxListCell с пустым списком элементов. |
ChoiceBoxListCell |
Создаёт стандартный экземпляр ChoiceBoxListCell с заданными элементами, используемыми для заполнения ChoiceBox при его отображении. |
ChoiceBoxListCell |
Создаёт экземпляр ChoiceBoxListCell с заданными элементами, используемыми для заполнения ChoiceBox при его отображении, и StringConverter, используемым для преобразования элемента в удобочитаемую форму. |
ChoiceBoxListCell |
Создаёт экземпляр ChoiceBoxListCell с заданными элементами, используемыми для заполнения ChoiceBox при его отображении, и StringConverter, используемым для преобразования элемента в удобочитаемую форму. |
ChoiceBoxListCell |
Создаёт стандартный экземпляр ChoiceBoxListCell с заданными элементами, используемыми для заполнения ChoiceBox при его отображении. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final ObjectProperty<StringConverter<T>> |
converterProperty() |
Свойство StringConverter. |
static <T> Callback<ListView<T>, |
forListView |
Создаёт фабрику ячеек ChoiceBox для использования в элементах управления ListView. |
static <T> Callback<ListView<T>, |
forListView |
Создаёт фабрику ячеек ChoiceBox для использования в элементах управления ListView. |
static <T> Callback<ListView<T>, |
forListView |
Создаёт фабрику ячеек ChoiceBox для использования в элементах управления ListView. |
static <T> Callback<ListView<T>, |
forListView |
Создаёт фабрику ячеек ChoiceBox для использования в элементах управления ListView. |
final StringConverter<T> |
getConverter() |
Возвращает StringConverter, используемый в этой ячейке. |
ObservableList<T> |
getItems() |
Возвращает элементы, которые будут отображаться в ChoiceBox при его отображении. |
final void |
setConverter |
Устанавливает StringConverter для использования в этой ячейке. |
void |
updateItem |
Метод updateItem не должен вызываться разработчиками, но это лучший метод для переопределения разработчиками, чтобы позволить им настраивать визуальные элементы ячейки. |
Методы, объявленные в классе javafx.scene.control.ListCell
getListView, listViewProperty, updateListView
Методы, объявленные в классе javafx.scene.control.IndexedCell
getIndex, indexProperty, updateIndex
Методы, объявленные в классе javafx.scene.control.Cell
cancelEdit, commitEdit, editableProperty, editingProperty, emptyProperty, getInitialFocusTraversable, getItem, isEditable, isEditing, isEmpty, isItemChanged, isSelected, itemProperty, selectedProperty, setEditable, setItem, startEdit, updateSelected
Методы, объявленные в классе javafx.scene.control.Labeled
alignmentProperty, contentDisplayProperty, ellipsisStringProperty, fontProperty, getAlignment, getClassCssMetaData, getContentBias, getContentDisplay, getControlCssMetaData, getEllipsisString, getFont, getGraphic, getGraphicTextGap, getInitialAlignment, getLabelPadding, getLineSpacing, getText, getTextAlignment, getTextFill, getTextOverrun, graphicProperty, graphicTextGapProperty, isMnemonicParsing, isUnderline, isWrapText, labelPaddingProperty, lineSpacingProperty, mnemonicParsingProperty, setAlignment, setContentDisplay, setEllipsisString, setFont, setGraphic, setGraphicTextGap, setLineSpacing, setMnemonicParsing, setText, setTextAlignment, setTextFill, setTextOverrun, setUnderline, setWrapText, textAlignmentProperty, textFillProperty, textOverrunProperty, textProperty, underlineProperty, wrapTextProperty
Методы, объявленные в классе javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, createDefaultSkin, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
Методы, объявленные в классе 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
Методы, объявленные в классе javafx.scene.Parent
getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
Методы, объявленные в классе 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, focusVisibleProperty, focusWithinProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, 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, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isFocusVisible, isFocusWithin, 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
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Методы, объявленные в интерфейсе javafx.css.Styleable
getStyleableNode
Подробное описание свойств
converter
public final ObjectProperty<StringConverter<T>> converterProperty
StringConverter.Подробное описание конструкторов
ChoiceBoxListCell
public ChoiceBoxListCell()
ChoiceBoxListCell
@SafeVarargs public ChoiceBoxListCell(T... items)
ChoiceBoxListCell по умолчанию со списком элементов, используемых для заполнения ChoiceBox при его отображении.- Параметры:
-
items- Элементы, которые будут отображаться в всплывающем меню ChoiceBox при выборе пользователем.
ChoiceBoxListCell
@SafeVarargs public ChoiceBoxListCell(StringConverter<T> converter, T... items)
ChoiceBoxListCell со списком элементов, используемых для заполнения ChoiceBox при его отображении, и StringConverter, используемым для преобразования элемента в удобочитаемую форму.- Параметры:
-
converter-StringConverter, который может преобразовывать элемент типа T в удобочитаемую строку, чтобы затем он мог быть отображен во всплывающем меню ChoiceBox. -
items- Элементы, которые будут отображаться во всплывающем меню ChoiceBox при выборе пользователем.
ChoiceBoxListCell
public ChoiceBoxListCell(ObservableList<T> items)
ChoiceBoxListCell по умолчанию со списком элементов, используемых для заполнения ChoiceBox при его отображении.- Параметры:
-
items- Элементы, которые будут отображаться во всплывающем меню ChoiceBox при выборе пользователем.
ChoiceBoxListCell
public ChoiceBoxListCell(StringConverter<T> converter, ObservableList<T> items)
ChoiceBoxListCell со списком элементов, используемых для заполнения ChoiceBox при его отображении, и StringConverter, используемым для преобразования элемента в удобочитаемую форму.- Параметры:
-
converter-StringConverter, который может преобразовывать элемент типа T в удобочитаемую строку, чтобы затем он мог быть отображен во всплывающем меню ChoiceBox. -
items- Элементы, которые будут отображаться во всплывающем меню ChoiceBox при выборе пользователем.
Подробное описание методов
forListView
@SafeVarargs public static <T> Callback<ListView<T>,ListCell<T>> forListView(T... items)
ListView. По умолчанию ячейка ChoiceBox отображается как Label при отсутствии редактирования и как ChoiceBox при редактировании. ChoiceBox по умолчанию занимает всю ширину ячейки списка.- Параметры типа:
-
T- Тип элементов, содержащихся в ListView. - Параметры:
-
items- Ноль или более элементов, которые будут показаны пользователю при отображении менюChoiceBox. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменили существующее значение в спискеitems. - Возвращаемое значение:
Callback, который вернёт ячейку списка, способную работать с типом элемента, содержащегося в ListView.
forListView
@SafeVarargs public static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter, T... items)
ListView. По умолчанию ячейка ChoiceBox отображается как Label при отсутствии редактирования и как ChoiceBox при редактировании. ChoiceBox по умолчанию занимает всю ширину ячейки списка.- Параметры типа:
-
T- Тип элементов, содержащихся в ListView. - Параметры:
-
converter-StringConverterдля преобразования заданного элемента (типа T) в строку для отображения пользователю. -
items- Ноль или более элементов, которые будут показаны пользователю при отображении менюChoiceBox. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменили существующее значение в спискеitems. - Возвращаемое значение:
Callback, который вернёт ячейку списка, способную работать с типом элемента, содержащегося в ListView.
forListView
public static <T> Callback<ListView<T>,ListCell<T>> forListView(ObservableList<T> items)
ListView. По умолчанию ячейка ChoiceBox отображается как Label при отсутствии редактирования и как ChoiceBox при редактировании. ChoiceBox по умолчанию занимает всю ширину ячейки списка.- Параметры типа:
-
T- Тип элементов, содержащихся в ListView. - Параметры:
-
items-ObservableList, содержащий ноль или более элементов, которые будут показаны пользователю при отображении менюChoiceBox. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменили существующее значение в спискеitems. - Возвращаемое значение:
Callback, который вернёт ячейку списка, способную работать с типом элемента, содержащегося в ListView.
forListView
public static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter, ObservableList<T> items)
ListView. По умолчанию ячейка ChoiceBox отображается как Label при отсутствии редактирования и как ChoiceBox при редактировании. ChoiceBox по умолчанию занимает всю ширину ячейки списка.- Параметры типа:
-
T- Тип элементов, содержащихся в ListView. - Параметры:
-
converter-StringConverterдля преобразования заданного элемента (типа T) в строку для отображения пользователю. -
items-ObservableList, содержащий ноль или более элементов, которые будут показаны пользователю при отображении менюChoiceBox. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменили существующее значение в спискеitems. - Возвращаемое значение:
Callback, который вернёт ячейку списка, способную работать с типом элемента, содержащегося в ListView.
converterProperty
public final ObjectProperty<StringConverter<T>> converterProperty()
StringConverter.- Возвращаемое значение:
- свойство
StringConverter - См. также:
setConverter
public final void setConverter(StringConverter<T> value)
StringConverter для использования в этой ячейке.- Parameters:
-
value-StringConverterдля использования в этой ячейке
getConverter
public final StringConverter<T> getConverter()
StringConverter, используемый в этой ячейке.- Returns:
StringConverter, используемый в этой ячейке
getItems
public ObservableList<T> getItems()
- Returns:
- Элементы, которые должны отображаться в ChoiceBox, когда она открыта
updateItem
public void updateItem(T item, boolean empty)
ListView, вызвать этот метод). Однако назначение метода updateItem заключается в том, чтобы разработчики, при указании пользовательских фабрик ячеек (например, ListView cell factory), могли переопределить метод updateItem, чтобы полностью настроить ячейку. Очень важно, чтобы подклассы Cell правильно переопределяли метод updateItem, так как отсутствие этого может привести к проблемам, таким как пустые ячейки или ячейки с неожиданным содержимым. Вот пример правильного переопределения метода updateItem:
protected void updateItem(T item, boolean empty) {
super.updateItem(item, empty);
if (empty || item == null) {
setText(null);
setGraphic(null);
} else {
setText(item.toString());
}
}
Обратите внимание на два важных момента в этом примере кода:
- Мы вызываем метод super.updateItem(T, boolean). Если этого не сделать, свойства item и empty не будут правильно установлены, и вы, вероятно, столкнётесь с графическими проблемами.
- Мы проверяем условие
emptyи, если оно истинно, устанавливаем свойства text и graphic в null. Если этого не сделать, пользователи почти гарантированно увидят графические артефакты в ячейках неожиданным образом.
- Overrides:
-
updateItemв классеCell<T> - Parameters:
-
item- Новый элемент для ячейки. -
empty- указывает, представляет ли эта ячейка данные из списка. Если она пустая, то она не представляет никаких данных предметной области, а используется для отображения "пустой" строки.
© 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.