Spec-Zone.ru › OpenJavaFX 21

Класс TextFieldListCell<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.TextFieldListCell<T>
Type Parameters:
T - Тип элементов, содержащихся в ListView.
All Implemented Interfaces:
Styleable, EventTarget, Skinnable
public class TextFieldListCell<T> extends ListCell<T>
Класс, содержащий реализацию ListCell, которая отображает узел TextField внутри ячейки.

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

Since:
JavaFX 2.2

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

Тип Свойство Описание
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

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

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

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

Модификатор и тип Метод Описание
final ObjectProperty<StringConverter<T>> converterProperty()
Свойство StringConverter.
static Callback<ListView<String>,ListCell<String>> forListView()
Предоставляет TextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ячейке или при вызове ListView.edit(int).
static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter)
Предоставляет TextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ячейке или при вызове ListView.edit(int).
final StringConverter<T> getConverter()
Возвращает используемый StringConverter в этой ячейке.
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()

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

TextFieldListCell

public TextFieldListCell()
Создаёт ячейку TextFieldListCell по умолчанию с нулевым конвертером. Без указанного StringConverter эта ячейка не сможет принимать входные данные от TextField (так как не будет знать, как преобразовать их обратно в объект домена). Поэтому настоятельно рекомендуется не использовать этот конструктор, если вы не планируете отдельно установить конвертер.

TextFieldListCell

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

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

forListView

public static Callback<ListView<String>,ListCell<String>> forListView()
Предоставляет TextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ней или при вызове ListView.edit(int). Этот метод будет работать только с экземплярами ListView типа String.
Возвращает:
Callback, который можно вставить в cell factory property ListView, что позволяет редактировать содержимое текстовым способом.

forListView

public static <T> Callback<ListView<T>,ListCell<T>> forListView(StringConverter<T> converter)
Предоставляет TextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ней или при вызове ListView.edit(int). Этот метод будет работать с любым экземпляром ListView, независимо от его обобщённого типа. Однако для этого необходимо предоставить StringConverter, который будет преобразовывать заданную строку (из того, что ввёл пользователь) в экземпляр типа T. Этот элемент затем будет передан в обратный вызов ListView.onEditCommitProperty().
Типы параметров:
T - тип элемента, содержащегося в ячейке
Параметры:
converter - StringConverter, который может преобразовать заданную строку (из того, что ввёл пользователь) в экземпляр типа T.
Возвращает:
Callback, который можно вставить в cell factory property ListView, что позволяет редактировать содержимое текстовым способом.

converterProperty

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

setConverter

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

getConverter

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

updateItem

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