- 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.TreeCell<T>
-
- javafx.scene.control.cell.TextFieldTreeCell<T>
-
- Type Parameters:
-
T- Тип элементов, содержащихся в TreeView.
- Все реализованные интерфейсы:
-
Styleable,EventTarget,Skinnable
public class TextFieldTreeCell<T> extends TreeCell<T>
Класс, содержащий реализациюTreeCell, которая рисует узелTextFieldвнутри ячейки.По умолчанию, TextFieldTreeCell отображается как
Labelпри отсутствии редактирования и как TextField в режиме редактирования. По умолчанию TextField будет растягиваться, чтобы заполнить всю ячейку дерева.- С момента:
- JavaFX 2.2
-
Краткое описание свойств
Свойства Тип Свойство Описание ObjectProperty<StringConverter<T>>converterСвойствоStringConverter.-
Унаследованные свойства от класса javafx.scene.control.TreeCell
disclosureNode, treeItem, treeView
-
Унаследованные свойства от класса 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
-
-
Краткое описание конструкторов
Конструкторы Конструктор Описание TextFieldTreeCell()Создает TextFieldTreeCell по умолчанию с нулевым конвертером.TextFieldTreeCell(StringConverter<T> converter)Создает TextFieldTreeCell, который предоставляетTextFieldпри переходе в режим редактирования, что позволяет редактировать содержимое ячейки.
-
Краткое описание методов
Все методыСтатические методыМетоды экземпляровКонкретные методы Модификатор и тип Метод Описание voidcancelEdit()Вызовите эту функцию, чтобы перейти из состояния редактирования в состояние без редактирования, не сохраняя входные данные пользователя.ObjectProperty<StringConverter<T>>converterProperty()СвойствоStringConverter.static Callback<TreeView<String>,TreeCell<String>>forTreeView()ПредоставляетTextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ячейке или при вызовеTreeView.edit(javafx.scene.control.TreeItem).static <T> Callback<TreeView<T>,TreeCell<T>>forTreeView(StringConverter<T> converter)ПредоставляетTextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ячейке или при вызовеTreeView.edit(javafx.scene.control.TreeItem).StringConverter<T>getConverter()ВозвращаетStringConverter, используемый в этой ячейке.voidsetConverter(StringConverter<T> value)УстанавливаетStringConverter, который будет использоваться в этой ячейке.voidstartEdit()Вызовите эту функцию, чтобы перейти из состояния без редактирования в состояние редактирования, если ячейка редактируема.voidupdateItem(T item, boolean empty)Метод updateItem не должен вызываться разработчиками, но это лучший метод для разработчиков для переопределения, чтобы позволить им настраивать визуальные элементы ячейки.-
Унаследованные методы от класса javafx.scene.control.TreeCell
commitEdit, createDefaultSkin, disclosureNodeProperty, executeAccessibleAction, getDisclosureNode, getTreeItem, getTreeView, queryAccessibleAttribute, setDisclosureNode, treeItemProperty, treeViewProperty, updateTreeItem, updateTreeView
-
Унаследованные методы от класса 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
-
-
Подробности конструктора
-
TextFieldTreeCell
public TextFieldTreeCell()
Создаёт стандартный TextFieldTreeCell с нулевым преобразователем. Без указанногоStringConverter, эта ячейка не сможет принимать входные данные из TextField (так как она не будет знать, как преобразовать их обратно в объект домена). Поэтому настоятельно рекомендуется не использовать этот конструктор, если вы не планируете отдельно задать преобразователь.
-
TextFieldTreeCell
public TextFieldTreeCell(StringConverter<T> converter)
Создаёт TextFieldTreeCell, предоставляющийTextFieldпри переходе в режим редактирования, что позволяет редактировать содержимое ячейки. Этот метод будет работать с любым экземпляром TreeView, независимо от его обобщённого типа. Однако для этого необходимо указатьStringConverter, который преобразует введённую строку (из того, что ввёл пользователь) в экземпляр типа T. Этот элемент затем будет передан в обратный вызовTreeView.onEditCommitProperty().- Параметры:
-
converter-converter, который может преобразовать введённую строку (из того, что ввёл пользователь) в экземпляр типа T.
-
-
Подробности метода
-
forTreeView
public static Callback<TreeView<String>,TreeCell<String>> forTreeView()
ПредоставляетTextField, позволяющий редактировать содержимое ячейки при двойном щелчке по ячейке или вызовеTreeView.edit(javafx.scene.control.TreeItem). Этот метод будет работать только с экземплярамиTreeViewтипа String.- Возвращает:
Callback, который можно вставить в свойствоcell factory propertyTreeView для включения текстового редактирования содержимого.
-
forTreeView
public static <T> Callback<TreeView<T>,TreeCell<T>> forTreeView(StringConverter<T> converter)
ПредоставляетTextField, позволяющий редактировать содержимое ячейки при двойном щелчке по ячейке или вызовеTreeView.edit(javafx.scene.control.TreeItem). Этот метод будет работать с любым экземпляромTreeView, независимо от его обобщённого типа. Однако для этого необходимо указатьStringConverter, который преобразует введённую строку (из того, что ввёл пользователь) в экземпляр типа T. Этот элемент затем будет передан в обратный вызовTreeView.onEditCommitProperty().- Тип параметров:
-
T- Тип элементов, содержащихся в TreeView - Параметры:
-
converter-StringConverter, который может преобразовать введённую строку (из того, что ввёл пользователь) в экземпляр типа T. - Возвращает:
Callback, который можно вставить в свойствоcell factory propertyTreeView для включения текстового редактирования содержимого.
-
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в классеTreeCell<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. Если этого не сделать, почти гарантировано, что конечные пользователи увидят графические артефакты в ячейках неожиданно.
- Параметры:
-
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.