- 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>
-
- Параметры типа:
-
T- Тип элементов, содержащихся в ListView.
- Все реализованные интерфейсы:
-
Styleable,EventTarget,Skinnable
public class TextFieldListCell<T> extends ListCell<T>
Класс, содержащий реализациюListCell, которая отображает узелTextFieldвнутри ячейки.По умолчанию, TextFieldListCell отображается как
Labelпри отсутствии редактирования и как TextField при редактировании. По умолчанию TextField будет растягиваться, чтобы заполнить всю ячейку списка.- С момента:
- JavaFX 2.2
-
Краткое описание свойств
Свойства Тип Свойство Описание ObjectProperty<StringConverter<T>>converterСвойствоStringConverter.-
Унаследованные свойства от класса 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, 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 по умолчанию с null-конвертером.TextFieldListCell(StringConverter<T> converter)Создаёт TextFieldListCell, предоставляющийTextFieldв режиме редактирования, позволяющий редактировать содержимое ячейки.
-
Краткое описание методов
Все методыСтатические методыМетоды экземпляраКонкретные методы Модификатор и тип Метод Описание voidcancelEdit()Вызовите эту функцию, чтобы перейти из состояния редактирования в состояние нередактирования без сохранения пользовательского ввода.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).StringConverter<T>getConverter()ВозвращаетStringConverter, используемый в этой ячейке.voidsetConverter(StringConverter<T> value)УстанавливаетStringConverterдля использования в этой ячейке.voidstartEdit()Вызовите эту функцию, чтобы перейти из состояния нередактирования в состояние редактирования, если ячейка разрешает редактирование.voidupdateItem(T item, boolean empty)Метод updateItem не должен вызываться разработчиками, но это лучший метод для переопределения разработчиками, чтобы позволить им настроить визуализацию ячейки.-
Унаследованные методы от класса javafx.scene.control.ListCell
commitEdit, createDefaultSkin, executeAccessibleAction, getListView, listViewProperty, queryAccessibleAttribute, updateListView
-
Унаследованные методы от класса javafx.scene.control.IndexedCell
getIndex, indexProperty, updateIndex
-
Унаследованные методы от класса javafx.scene.control.Cell
editableProperty, editingProperty, emptyProperty, getInitialFocusTraversable, getItem, isEditable, isEditing, isEmpty, isItemChanged, isSelected, itemProperty, layoutChildren, selectedProperty, setEditable, setItem, 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, toString, underlineProperty, wrapTextProperty
-
Унаследованные методы от класса javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, getBaselineOffset, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
-
Унаследованные методы от класса 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, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
-
Унаследованные методы от класса javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, 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, fireEvent, focusedProperty, focusTraversableProperty, 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, 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, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, 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.- Возвращает:
- свойство
StringConverter
-
-
Подробности конструктора
-
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 propertyListView для включения текстового редактирования содержимого.
-
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 propertyListView для включения текстового редактирования содержимого.
-
converterProperty
public final ObjectProperty<StringConverter<T>> converterProperty()
СвойствоStringConverter.- Возвращает:
- свойство
StringConverter
-
setConverter
public final void setConverter(StringConverter<T> value)
УстанавливаетStringConverter, который будет использоваться в этой ячейке.- Параметры:
-
value-StringConverter, который будет использоваться в этой ячейке
-
getConverter
public final StringConverter<T> getConverter()
ВозвращаетStringConverter, используемый в этой ячейке.- Возвращает:
StringConverter, используемый в этой ячейке
-
startEdit
public void startEdit()
Вызовите эту функцию, чтобы перейти из состояния без редактирования в состояние редактирования, если ячейка редактируема. Если эта ячейка уже находится в состоянии редактирования, она останется в нём.
-
cancelEdit
public void cancelEdit()
Вызовите эту функцию, чтобы перейти из состояния редактирования в состояние без редактирования без сохранения входных данных пользователя.- Переопределяет:
-
cancelEditв классеListCell<T>
-
updateItem
public void updateItem(T item, boolean empty)
Метод updateItem не должен вызываться разработчиками, но это лучший метод для разработчиков, чтобы переопределить его и настроить визуальные аспекты ячейки. Пояснение: разработчики никогда не должны вызывать этот метод в своём коде (они должны оставить это контролю пользовательского интерфейса, например, контролюListView). Однако цель метода updateItem заключается в том, чтобы разработчики при указании пользовательских фабрик ячеек (например, ListViewcell factory) могли переопределить метод updateItem, чтобы настроить ячейку полностью.Очень важно, чтобы подклассы Cell корректно переопределяли метод 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. Если мы этого не сделаем, почти наверняка пользователи увидят графические артефакты в ячейках неожиданно.
- Переопределяет:
-
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.