TableCell (JavaFX 17)

Module javafx.controls
Package javafx.scene.control

## Class TableCell<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>

- Type Parameters:
    `S` - The type of the TableView generic type (i.e. S == TableView<S>). This should also match with the first generic type in TableColumn.
    `T` - The type of the item contained within the Cell.
  All Implemented Interfaces:
    `Styleable`, `EventTarget`, `Skinnable`
  Direct Known Subclasses:
    `CheckBoxTableCell`, `ChoiceBoxTableCell`, `ComboBoxTableCell`, `ProgressBarTableCell`, `TextFieldTableCell`

      public class TableCell<S,​T>
      extends IndexedCell<T>

  Represents a single row/column intersection in a `TableView`. To represent this intersection, a TableCell contains an `index` property, as well as a `tableColumn` property. In addition, a TableCell instance knows what `TableRow` it exists in.

  A note about selection: A TableCell visually shows it is selected when two conditions are met:

  1. The `TableSelectionModel.isSelected(int, TableColumnBase)` method returns true for the row / column that this cell represents, and
  2. The `cell selection mode` property is set to true (to represent that it is allowable to select individual cells (and not just rows of cells)).
  Since:
    JavaFX 2.0
  See Also:
    `TableView`, `TableColumn`, `Cell`, `IndexedCell`, `TableRow`

- - ### Property Summary

    Properties
    Type | Property | Description
    --- | --- | ---
    `ReadOnlyObjectProperty<TableColumn<S,​T>>` | `tableColumn` | The TableColumn instance that backs this TableCell.
    `ReadOnlyObjectProperty<TableRow<S>>` | `tableRow` | The TableRow that this TableCell currently finds itself placed within.
    `ReadOnlyObjectProperty<TableView<S>>` | `tableView` | The TableView associated with this TableCell.

    - ### Properties declared in class javafx.scene.control.IndexedCell

      `index`

    - ### Properties declared in class javafx.scene.control.Cell

      `editable, editing, empty, item, selected`

    - ### Properties declared in class javafx.scene.control.Labeled

      `alignment, contentDisplay, ellipsisString, font, graphic, graphicTextGap, labelPadding, lineSpacing, mnemonicParsing, textAlignment, textFill, textOverrun, text, underline, wrapText`

    - ### Properties declared in class javafx.scene.control.Control

      `contextMenu, skin, tooltip`

    - ### Properties declared in class javafx.scene.layout.Region

      `background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width`

    - ### Properties declared in class javafx.scene.Parent

      `needsLayout`

    - ### Properties declared in class 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`

  - ### Field Summary

    - ### Fields declared in class javafx.scene.layout.Region

      `USE_COMPUTED_SIZE, USE_PREF_SIZE`

    - ### Fields declared in class javafx.scene.Node

      `BASELINE_OFFSET_SAME_AS_HEIGHT`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TableCell()` | Constructs a default TableCell instance with a style class of 'table-cell'

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `TableColumn<S,​T>` | `getTableColumn()` | Gets the value of the property tableColumn.
    `TableRow<S>` | `getTableRow()` | Gets the value of the property tableRow.
    `TableView<S>` | `getTableView()` | Gets the value of the property tableView.
    `ReadOnlyObjectProperty<TableColumn<S,​T>>` | `tableColumnProperty()` | The TableColumn instance that backs this TableCell.
    `ReadOnlyObjectProperty<TableRow<S>>` | `tableRowProperty()` | The TableRow that this TableCell currently finds itself placed within.
    `ReadOnlyObjectProperty<TableView<S>>` | `tableViewProperty()` | The TableView associated with this TableCell.
    `void` | `updateTableColumn​(TableColumn col)` | Updates the TableColumn associated with this TableCell.
    `void` | `updateTableRow​(TableRow tableRow)` | Updates the TableRow associated with this TableCell.
    `void` | `updateTableView​(TableView tv)` | Updates the TableView associated with this TableCell.

    - ### Methods declared in class javafx.scene.control.IndexedCell

      `getIndex, indexProperty, updateIndex`

    - ### Methods declared in class javafx.scene.control.Cell

      `cancelEdit, commitEdit, editableProperty, editingProperty, emptyProperty, getInitialFocusTraversable, getItem, isEditable, isEditing, isEmpty, isItemChanged, isSelected, itemProperty, selectedProperty, setEditable, setItem, startEdit, updateItem, updateSelected`

    - ### Methods declared in class 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`

    - ### Methods declared in class javafx.scene.control.Control

      `computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, createDefaultSkin, getContextMenu, getCssMetaData, getTooltip, isResizable, setContextMenu, setTooltip, skinProperty, tooltipProperty`

    - ### Methods declared in class 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`

    - ### Methods declared in class javafx.scene.Parent

      `getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds`

    - ### Methods declared in class 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, 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, 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, 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`

    - ### Methods declared in class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods declared in interface javafx.scene.control.Skinnable

      `getSkin, setSkin`

    - ### Methods declared in interface javafx.css.Styleable

      `getStyleableNode, getStyleClass`

- - ### Property Detail

    - #### tableColumn

          public final ReadOnlyObjectProperty<TableColumn<S,​T>> tableColumnProperty

      The TableColumn instance that backs this TableCell.
      See Also:
        `getTableColumn()`

    - #### tableView

          public final ReadOnlyObjectProperty<TableView<S>> tableViewProperty

      The TableView associated with this TableCell.
      See Also:
        `getTableView()`

    - #### tableRow

          public final ReadOnlyObjectProperty<TableRow<S>> tableRowProperty

      The TableRow that this TableCell currently finds itself placed within. The TableRow may be null early in the TableCell lifecycle, in the period between the TableCell being instantiated and being set into an owner TableRow.
      See Also:
        `getTableRow()`

  - ### Constructor Detail

    - #### TableCell

          public TableCell()

      Constructs a default TableCell instance with a style class of 'table-cell'

  - ### Method Detail

    - #### tableColumnProperty

          public final ReadOnlyObjectProperty<TableColumn<S,​T>> tableColumnProperty()

      The TableColumn instance that backs this TableCell.
      See Also:
        `getTableColumn()`

    - #### getTableColumn

          public final TableColumn<S,​T> getTableColumn()

      Gets the value of the property tableColumn.
      Property description:
        The TableColumn instance that backs this TableCell.

    - #### getTableView

          public final TableView<S> getTableView()

      Gets the value of the property tableView.
      Property description:
        The TableView associated with this TableCell.

    - #### tableViewProperty

          public final ReadOnlyObjectProperty<TableView<S>> tableViewProperty()

      The TableView associated with this TableCell.
      See Also:
        `getTableView()`

    - #### getTableRow

          public final TableRow<S> getTableRow()

      Gets the value of the property tableRow.
      Property description:
        The TableRow that this TableCell currently finds itself placed within. The TableRow may be null early in the TableCell lifecycle, in the period between the TableCell being instantiated and being set into an owner TableRow.

    - #### tableRowProperty

          public final ReadOnlyObjectProperty<TableRow<S>> tableRowProperty()

      The TableRow that this TableCell currently finds itself placed within. The TableRow may be null early in the TableCell lifecycle, in the period between the TableCell being instantiated and being set into an owner TableRow.
      See Also:
        `getTableRow()`

    - #### updateTableView

          public final void updateTableView​(TableView tv)

      Updates the TableView associated with this TableCell. This is typically only done once when the TableCell is first added to the TableView. Note: This function is intended to be used by experts, primarily by those implementing new Skins. It is not common for developers or designers to access this function directly.
      Parameters:
        `tv` - the TableView associated with this TableCell

    - #### updateTableRow

          public final void updateTableRow​(TableRow tableRow)

      Updates the TableRow associated with this TableCell. Note: This function is intended to be used by experts, primarily by those implementing new Skins. It is not common for developers or designers to access this function directly.
      Parameters:
        `tableRow` - the TableRow associated with this TableCell

    - #### updateTableColumn

          public final void updateTableColumn​(TableColumn col)

      Updates the TableColumn associated with this TableCell. Note: This function is intended to be used by experts, primarily by those implementing new Skins. It is not common for developers or designers to access this function directly.
      Parameters:
        `col` - the TableColumn associated with this TableCell