Spec-Zone.ru › OpenJavaFX 21

Класс TextFieldTableCell<S,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.TableCell<S,T>
javafx.scene.control.cell.TextFieldTableCell<S,T>
Type Parameters:
S - Тип дженерика TableView
T - Тип элементов, содержащихся в TableColumn.
Все реализуемые интерфейсы:
Styleable, EventTarget, Skinnable
public class TextFieldTableCell<S,T> extends TableCell<S,T>
Класс, содержащий реализацию TableCell, которая рисует узел TextField внутри ячейки.

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

Since:
JavaFX 2.2

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

Тип Свойство Описание
final ObjectProperty<StringConverter<T>> converter
Свойство StringConverter.

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

tableColumn, tableRow, tableView

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

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

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

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

Модификатор и тип Метод Описание
final ObjectProperty<StringConverter<T>> converterProperty()
Свойство StringConverter.
static <S> Callback<TableColumn<S,String>,TableCell<S,String>> forTableColumn()
Предоставляет TextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ячейке или при вызове TableView.edit(int, javafx.scene.control.TableColumn).
static <S, T> Callback<TableColumn<S,T>,TableCell<S,T>> forTableColumn(StringConverter<T> converter)
Предоставляет TextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ячейке или при вызове TableView.edit(int, javafx.scene.control.TableColumn).
final StringConverter<T> getConverter()
Возвращает StringConverter, используемый в этой ячейке.
final void setConverter(StringConverter<T> value)
Устанавливает StringConverter для использования в этой ячейке.
void updateItem(T item, boolean empty)
Метод updateItem не должен вызываться разработчиками, но он является лучшим методом для переопределения, чтобы позволить разработчикам настроить визуальные элементы ячейки.

Методы, объявленные в классе javafx.scene.control.TableCell

getTableColumn, getTableRow, getTableView, tableColumnProperty, tableRowProperty, tableViewProperty, updateTableColumn, updateTableRow, updateTableView

Методы, объявленные в классе 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()

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

TextFieldTableCell

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

TextFieldTableCell

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

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

forTableColumn

public static <S> Callback<TableColumn<S,String>,TableCell<S,String>> forTableColumn()
Предоставляет TextField, который позволяет редактировать содержимое ячейки при двойном щелчке по ячейке или при вызове TableView.edit(int, javafx.scene.control.TableColumn). Этот метод будет работать только с экземплярами TableColumn типа String.
Параметры типа:
S - Тип дженерика TableView
Возвращает:
Callback, который можно вставить в cell factory property TableColumn, что позволит редактировать содержимое текста.

forTableColumn

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

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 не должен вызываться разработчиками, но это лучший метод для переопределения разработчиками, чтобы позволить им настроить визуальные элементы ячейки. Для уточнения разработчики никогда не должны вызывать этот метод в своём коде (они должны позволить элементу пользовательского интерфейса, такому как 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