Module javafx.controls
Package javafx.scene.control.skin

## Class TableViewSkin<T>

- java.lang.Object
- - javafx.scene.control.SkinBase<C>
  - - javafx.scene.control.skin.VirtualContainerBase<C,​I>
    - - javafx.scene.control.skin.TableViewSkinBase<T,​T,​TableView<T>,​TableRow<T>,​TableColumn<T,​?>>
      - - javafx.scene.control.skin.TableViewSkin<T>

- All Implemented Interfaces:
    `Skin<TableView<T>>`

      public class TableViewSkin<T>
      extends TableViewSkinBase<T,​T,​TableView<T>,​TableRow<T>,​TableColumn<T,​?>>

  Default skin implementation for the `TableView` control.
  Since:
    9
  See Also:
    `TableView`

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TableViewSkin​(TableView<T> control)` | Creates a new TableViewSkin instance, installing the necessary child nodes into the Control `children` list, as well as the necessary input mappings for handling key, mouse, etc events.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `dispose()` | Called by a Skinnable when the Skin is replaced on the Skinnable.
    `protected void` | `executeAccessibleAction​(AccessibleAction action, Object... parameters)` | This method is called by the assistive technology to request the action indicated by the argument should be executed.
    `protected int` | `getItemCount()` | Returns the total number of items in this container, including those that are currently hidden because they are out of view.
    `Object` | `queryAccessibleAttribute​(AccessibleAttribute attribute, Object... parameters)` | This method is called by the assistive technology to request the value for an attribute.

    - ### Methods inherited from class javafx.scene.control.skin.TableViewSkinBase

      `computePrefHeight, computePrefWidth, createTableHeaderRow, getTableHeaderRow, layoutChildren, onFocusAboveCell, onFocusBelowCell, onFocusLeftCell, onFocusRightCell, onMoveToFirstCell, onMoveToLastCell, onScrollPageDown, onScrollPageUp, onSelectAboveCell, onSelectBelowCell, onSelectLeftCell, onSelectRightCell, scrollHorizontally, scrollHorizontally, updateItemCount`

    - ### Methods inherited from class javafx.scene.control.skin.VirtualContainerBase

      `createVirtualFlow, getVirtualFlow, markItemCountDirty`

    - ### Methods inherited from class javafx.scene.control.SkinBase

      `computeBaselineOffset, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, consumeMouseEvents, getChildren, getClassCssMetaData, getCssMetaData, getNode, getSkinnable, layoutInArea, layoutInArea, layoutInArea, positionInArea, positionInArea, pseudoClassStateChanged, registerChangeListener, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, unregisterChangeListeners`

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### TableViewSkin

          public TableViewSkin​(TableView<T> control)

      Creates a new TableViewSkin instance, installing the necessary child nodes into the Control `children` list, as well as the necessary input mappings for handling key, mouse, etc events.
      Parameters:
        `control` - The control that this skin should be installed onto.

  - ### Method Detail

    - #### dispose

          public void dispose()

      Called by a Skinnable when the Skin is replaced on the Skinnable. This method allows a Skin to implement any logic necessary to clean up itself after the Skin is no longer needed. It may be used to release native resources. The methods `Skin.getSkinnable()` and `Skin.getNode()` should return null following a call to dispose. Calling dispose twice has no effect.
      Specified by:
        `dispose` in interface `Skin<T>`
      Overrides:
        `dispose` in class `TableViewSkinBase<T,​T,​TableView<T>,​TableRow<T>,​TableColumn<T,​?>>`

    - #### queryAccessibleAttribute

          public Object queryAccessibleAttribute​(AccessibleAttribute attribute,
                                                 Object... parameters)

      This method is called by the assistive technology to request the value for an attribute.

      This method is commonly overridden by subclasses to implement attributes that are required for a specific role.
      If a particular attribute is not handled, the superclass implementation must be called.

      Overrides:
        `queryAccessibleAttribute` in class `TableViewSkinBase<T,​T,​TableView<T>,​TableRow<T>,​TableColumn<T,​?>>`
      Parameters:
        `attribute` - the requested attribute
        `parameters` - optional list of parameters
      Returns:
        the value for the requested attribute
      See Also:
        `AccessibleAttribute`, `Node.queryAccessibleAttribute(javafx.scene.AccessibleAttribute, java.lang.Object...)`

    - #### executeAccessibleAction

          protected void executeAccessibleAction​(AccessibleAction action,
                                                 Object... parameters)

      This method is called by the assistive technology to request the action indicated by the argument should be executed.

      This method is commonly overridden by subclasses to implement action that are required for a specific role.
      If a particular action is not handled, the superclass implementation must be called.

      Overrides:
        `executeAccessibleAction` in class `SkinBase<TableView<T>>`
      Parameters:
        `action` - the action to execute
        `parameters` - optional list of parameters
      See Also:
        `AccessibleAction`, `Node.executeAccessibleAction(javafx.scene.AccessibleAction, java.lang.Object...)`

    - #### getItemCount

          protected int getItemCount()

      Returns the total number of items in this container, including those that are currently hidden because they are out of view.
      Specified by:
        `getItemCount` in class `VirtualContainerBase<TableView<T>,​TableRow<T>>`
      Returns:
        the total number of items in this container