Spec-Zone.ru › OpenJavaFX 21

Класс ComboBoxListCell<T>

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
javafx.scene.control.Labeled
javafx.scene.control.Cell<T>
javafx.scene.control.IndexedCell<T>
javafx.scene.control.ListCell<T>
javafx.scene.control.cell.ComboBoxListCell<T>
Type Parameters:
T - Тип элементов, содержащихся в ListView.
Все реализованные интерфейсы:
Styleable, EventTarget, Skinnable
public class ComboBoxListCell<T> extends ListCell<T>
Класс, содержащий реализацию ListCell, которая отображает узел ComboBox внутри ячейки.

По умолчанию ComboBoxListCell отображается как Label при отсутствии редактирования и как ComboBox в режиме редактирования. ComboBox по умолчанию растягивается, чтобы заполнить всю ячейку списка.

Для создания ComboBoxListCell необходимо предоставить ноль или более элементов, которые будут отображаться пользователю при отображении меню ComboBox. Эти элементы должны быть того же типа, что и элементы последовательности ListView, чтобы при выборе они заменяли существующее значение в списке items.

Since:
JavaFX 2.2

Краткое описание свойств

Тип Свойство Описание
final BooleanProperty comboBoxEditable
Свойство, определяющее, можно ли редактировать ComboBox при его отображении пользователю.
final ObjectProperty<StringConverter<T>> converter
Свойство StringConverter.

Свойства, объявленные в классе javafx.scene.control.ListCell

listView

Свойства, объявленные в классе javafx.scene.control.IndexedCell

index

Свойства, объявленные в классе javafx.scene.control.Cell

editable, editing, empty, item, selected

Свойства, объявленные в классе 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

Краткое описание конструкторов

Конструктор Описание
ComboBoxListCell()
Создаёт ячейку ComboBoxListCell по умолчанию со списком элементов по умолчанию.
ComboBoxListCell(ObservableList<T> items)
Создаёт экземпляр ComboBoxListCell по умолчанию, используя заданные элементы для заполнения ComboBox при отображении.
ComboBoxListCell(StringConverter<T> converter, ObservableList<T> items)
Создаёт экземпляр ComboBoxListCell, используя заданные элементы для заполнения ComboBox при отображении, и StringConverter для преобразования элемента в удобочитаемый вид.
ComboBoxListCell(StringConverter<T> converter, T... items)
Создаёт экземпляр ComboBoxListCell, используя заданные элементы для заполнения ComboBox при отображении, и StringConverter для преобразования элемента в удобочитаемый вид.
ComboBoxListCell(T... items)
Создаёт экземпляр ComboBoxListCell по умолчанию, используя заданные элементы для заполнения ComboBox при отображении.

Краткое описание методов

Модификатор и тип Метод Описание
final BooleanProperty comboBoxEditableProperty()
Свойство, определяющее, можно ли редактировать ComboBox при его отображении пользователю.
final ObjectProperty<StringConverter<T>> converterProperty()
Свойство StringConverter.
static <T> Callback<ListView<T>,ListCell<T>> forListView(ObservableList<T> items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView.
static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter, ObservableList<T> items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView.
static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter, T... items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView.
static <T> Callback<ListView<T>,ListCell<T>> forListView(T... items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView.
final StringConverter<T> getConverter()
Возвращает StringConverter, используемый в этой ячейке.
ObservableList<T> getItems()
Возвращает элементы, которые будут отображаться в раскрывающемся списке выбора.
final boolean isComboBoxEditable()
Возвращает true, если ComboBox разрешает редактирование.
final void setComboBoxEditable(boolean value)
Настраивает ComboBox для редактирования (чтобы разрешить ввод пользователем вне вариантов, предоставленных в раскрывающемся списке).
final void setConverter(StringConverter<T> value)
Устанавливает StringConverter для использования в этой ячейке.
void updateItem(T item, boolean empty)
Метод 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.
См. также:
  • getConverter()
  • setConverter(StringConverter)
  • converterProperty()

comboBoxEditable

public final BooleanProperty comboBoxEditableProperty
Свойство, определяющее, является ли ComboBox редактируемым при отображении пользователю.
См. также:
  • isComboBoxEditable()
  • setComboBoxEditable(boolean)
  • comboBoxEditableProperty()

Подробности конструкторов

ComboBoxListCell

public ComboBoxListCell()
Создаёт стандартную ячейку ComboBoxListCell со списком элементов.

ComboBoxListCell

@SafeVarargs public ComboBoxListCell(T... items)
Создаёт экземпляр ComboBoxListCell по умолчанию с заданными элементами, используемыми для заполнения ComboBox при его отображении.
Параметры:
items - Элементы, которые будут отображаться в всплывающем меню ComboBox при выборе пользователем.

ComboBoxListCell

@SafeVarargs public ComboBoxListCell(StringConverter<T> converter, T... items)
Создаёт экземпляр ComboBoxListCell с заданными элементами, используемыми для заполнения ComboBox при его отображении, и StringConverter, используемым для преобразования элемента в читаемый вид.
Параметры:
converter - StringConverter, который может преобразовать элемент типа T в строку для отображения в всплывающем меню ComboBox.
items - Элементы, которые будут отображаться в всплывающем меню ComboBox при выборе пользователем.

ComboBoxListCell

public ComboBoxListCell(ObservableList<T> items)
Создаёт экземпляр ComboBoxListCell по умолчанию с заданными элементами, используемыми для заполнения ComboBox при его отображении.
Параметры:
items - Элементы, которые будут отображаться в всплывающем меню ComboBox при выборе пользователем.

ComboBoxListCell

public ComboBoxListCell(StringConverter<T> converter, ObservableList<T> items)
Создаёт экземпляр ComboBoxListCell с заданными элементами, используемыми для заполнения ComboBox при его отображении, и StringConverter, используемым для преобразования элемента в читаемый вид.
Параметры:
converter - StringConverter, который может преобразовать элемент типа T в строку для отображения в всплывающем меню ComboBox.
items - Элементы, которые будут отображаться в всплывающем меню ComboBox при выборе пользователем.

Подробности методов

forListView

@SafeVarargs public static <T> Callback<ListView<T>,ListCell<T>> forListView(T... items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView. По умолчанию ComboBoxCell отображается как Label при отсутствии редактирования и как ComboBox при редактировании. По умолчанию ComboBox занимает всю ширину ячейки списка.
Параметры типа:
T - Тип элементов, содержащихся в ListView.
Параметры:
items - Ноль или более элементов, которые будут отображаться пользователю, когда меню ComboBox открыто. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменяли текущее значение в списке items.
Возвращает:
Callback, который вернёт ячейку ListCell, совместимую с типом элементов в ListView.

forListView

@SafeVarargs public static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter, T... items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView. По умолчанию ComboBoxCell отображается как Label при отсутствии редактирования и как ComboBox при редактировании. По умолчанию ComboBox занимает всю ширину ячейки списка.
Параметры типа:
T - Тип элементов, содержащихся в ListView.
Параметры:
converter - StringConverter для преобразования данного элемента (типа T) в строку для отображения пользователю.
items - Ноль или более элементов, которые будут отображаться пользователю, когда меню ComboBox открыто. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменяли текущее значение в списке items.
Возвращает:
Callback, который вернёт ячейку ListCell, совместимую с типом элементов в ListView.

forListView

public static <T> Callback<ListView<T>,ListCell<T>> forListView(ObservableList<T> items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView. По умолчанию ComboBoxCell отображается как Label при отсутствии редактирования и как ComboBox при редактировании. По умолчанию ComboBox занимает всю ширину ячейки списка.
Параметры типа:
T - Тип элементов, содержащихся в ListView.
Параметры:
items - ObservableList, содержащий ноль или более элементов, которые будут отображаться пользователю, когда меню ComboBox открыто. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменяли текущее значение в списке items.
Возвращает:
Callback, который вернёт ячейку ListCell, совместимую с типом элементов в ListView.

forListView

public static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter, ObservableList<T> items)
Создаёт фабрику ячеек ComboBox для использования в элементах управления ListView. По умолчанию ComboBoxCell отображается как Label при отсутствии редактирования и как ComboBox при редактировании. По умолчанию ComboBox занимает всю ширину ячейки списка.
Параметры типа:
T - Тип элементов, содержащихся в ListView.
Параметры:
converter - StringConverter для преобразования данного элемента (типа T) в строку для отображения пользователю.
items - ObservableList, содержащий ноль или более элементов, которые будут отображаться пользователю, когда меню ComboBox открыто. Эти элементы должны быть того же типа, что и элементы списка ListView, чтобы при выборе они заменяли текущее значение в списке items.
Возвращает:
Callback, который вернёт ячейку ListCell, совместимую с типом элементов в ListView.

свойство преобразователя

public final ObjectProperty<StringConverter<T>> converterProperty()
Свойство StringConverter.
Возвращает:
свойство StringConverter
См. также:
  • getConverter()
  • setConverter(StringConverter)

установитьПреобразователь

public final void setConverter(StringConverter<T> value)
Устанавливает StringConverter, который будет использоваться в этой ячейке.
Параметры:
value - StringConverter, который будет использоваться в этой ячейке

получитьПреобразователь

public final StringConverter<T> getConverter()
Возвращает StringConverter, используемый в этой ячейке.
Возвращает:
StringConverter, используемый в этой ячейке

свойство comboBoxEditable

public final BooleanProperty comboBoxEditableProperty()
Свойство, представляющее, является ли ComboBox редактируемым при отображении пользователю.
Возвращает:
свойство, представляющее, является ли ComboBox редактируемым при отображении пользователю
См. также:
  • isComboBoxEditable()
  • setComboBoxEditable(boolean)

установитьComboBoxEditable

public final void setComboBoxEditable(boolean value)
Настраивает ComboBox как редактируемый (чтобы разрешить ввод пользователем данных за пределами вариантов, представленных в раскрывающемся списке).
Параметры:
value - значение редактируемости для этого ComboBox

isComboBoxEditable

public final boolean isComboBoxEditable()
Возвращает true, если ComboBox редактируемый.
Возвращает:
true, если ComboBox редактируемый

получитьЭлементы

public ObservableList<T> getItems()
Возвращает элементы, которые будут отображаться в ChoiceBox при её отображении.
Возвращает:
элементы, которые будут отображаться в ChoiceBox при её отображении

обновитьЭлемент

public void updateItem(T item, boolean empty)
Метод updateItem не должен вызываться разработчиками, но это лучший метод для переопределения разработчиками, чтобы позволить им настроить визуальные аспекты ячейки. Чтобы прояснить, разработчики никогда не должны вызывать этот метод в своём коде (они должны оставить это UI-контролю, такому как контролю 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());
     }
 }
 

Обратите внимание в этом коде на два важных момента:

  1. Мы вызываем метод super.updateItem(T, boolean). Если этого не сделать, свойства item и empty не будут правильно установлены, и вы, вероятно, получите графические проблемы.
  2. Мы проверяем условие empty, и если оно верно, мы устанавливаем свойства text и graphic в null. Если мы этого не сделаем, почти гарантируется, что конечные пользователи увидят графические артефакты в ячейках неожиданно.
Переопределяет:
updateItem в классе Cell<T>
Параметры:
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.

Spec-Zone.ru

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