- Type Parameters:
- T- The type of the elements contained within the TableColumn.
- All Implemented Interfaces:
- Styleable,- EventTarget,- Skinnable
public class CheckBoxTableCell<S,T> extends TableCell<S,T>
TableCell implementation that draws a
 CheckBox node inside the cell, optionally with a label to indicate
 what the checkbox represents.
 By default, the CheckBoxTableCell is rendered with a CheckBox centred in
 the TableColumn. If a label is required, it is necessary to provide a
 non-null StringConverter instance to the
 CheckBoxTableCell(Callback, StringConverter) constructor.
 
To construct an instance of this class, it is necessary to provide a
 Callback that, given an object of type T, will return an
 ObservableProperty<Boolean> that represents whether the given item is
 selected or not. This ObservableValue will be bound bidirectionally (meaning
 that the CheckBox in the cell will set/unset this property based on user
 interactions, and the CheckBox will reflect the state of the ObservableValue,
 if it changes externally).
 
Note that the CheckBoxTableCell renders the CheckBox 'live', meaning that
 the CheckBox is always interactive and can be directly toggled by the user.
 This means that it is not necessary that the cell enter its
 editing state (usually by the user double-clicking
 on the cell). A side-effect of this is that the usual editing callbacks
 (such as on edit commit)
 will not be called. If you want to be notified of changes,
 it is recommended to directly observe the boolean properties that are
 manipulated by the CheckBox.
- Since:
- JavaFX 2.2
- 
Property SummaryProperties Type Property Description ObjectProperty<StringConverter<T>>converterTheStringConverterproperty.ObjectProperty<Callback<Integer,ObservableValue<Boolean>>>selectedStateCallbackProperty representing theCallbackthat is bound to by the CheckBox shown on screen.Properties declared in class javafx.scene.control.TableCelltableColumn, tableRow, tableViewProperties declared in class javafx.scene.control.IndexedCellindexProperties declared in class javafx.scene.control.Labeledalignment, contentDisplay, ellipsisString, font, graphic, graphicTextGap, labelPadding, lineSpacing, mnemonicParsing, textAlignment, textFill, textOverrun, text, underline, wrapTextProperties declared in class javafx.scene.control.ControlcontextMenu, skin, tooltipProperties declared in class javafx.scene.layout.Regionbackground, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, widthProperties declared in class javafx.scene.ParentneedsLayoutProperties declared in class javafx.scene.NodeaccessibleHelp, 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 SummaryFields declared in class javafx.scene.layout.RegionUSE_COMPUTED_SIZE, USE_PREF_SIZEFields declared in class javafx.scene.NodeBASELINE_OFFSET_SAME_AS_HEIGHT
- 
Constructor SummaryConstructors Constructor Description CheckBoxTableCell()Creates a default CheckBoxTableCell.CheckBoxTableCell(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty)Creates a default CheckBoxTableCell with a customCallbackto retrieve an ObservableValue for a given cell index.CheckBoxTableCell(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty, StringConverter<T> converter)Creates a CheckBoxTableCell with a custom string converter.
- 
Method SummaryModifier and Type Method Description ObjectProperty<StringConverter<T>>converterProperty()TheStringConverterproperty.static <S> Callback<TableColumn<S,Boolean>,TableCell<S,Boolean>>forTableColumn(TableColumn<S,Boolean> column)Creates a cell factory for use in aTableColumncell factory.static <S, T> Callback<TableColumn<S,T>,TableCell<S,T>>forTableColumn(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty)Creates a cell factory for use in aTableColumncell factory.static <S, T> Callback<TableColumn<S,T>,TableCell<S,T>>forTableColumn(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty, boolean showLabel)Creates a cell factory for use in aTableColumncell factory.static <S, T> Callback<TableColumn<S,T>,TableCell<S,T>>forTableColumn(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty, StringConverter<T> converter)Creates a cell factory for use in aTableColumncell factory.StringConverter<T>getConverter()Returns theStringConverterused in this cell.Callback<Integer,ObservableValue<Boolean>>getSelectedStateCallback()Returns theCallbackthat is bound to by the CheckBox shown on screen.ObjectProperty<Callback<Integer,ObservableValue<Boolean>>>selectedStateCallbackProperty()Property representing theCallbackthat is bound to by the CheckBox shown on screen.voidsetConverter(StringConverter<T> value)Sets theStringConverterto be used in this cell.voidsetSelectedStateCallback(Callback<Integer,ObservableValue<Boolean>> value)Sets theCallbackthat is bound to by the CheckBox shown on screen.Methods declared in class javafx.scene.control.TableCellgetTableColumn, getTableRow, getTableView, tableColumnProperty, tableRowProperty, tableViewProperty, updateTableColumn, updateTableRow, updateTableViewMethods declared in class javafx.scene.control.IndexedCellgetIndex, indexProperty, updateIndexMethods declared in class javafx.scene.control.CellcancelEdit, commitEdit, editableProperty, editingProperty, emptyProperty, getInitialFocusTraversable, getItem, isEditable, isEditing, isEmpty, isItemChanged, isSelected, itemProperty, selectedProperty, setEditable, setItem, startEdit, updateItem, updateSelectedMethods declared in class javafx.scene.control.LabeledalignmentProperty, 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, wrapTextPropertyMethods declared in class javafx.scene.control.ControlcomputeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, createDefaultSkin, getContextMenu, getCssMetaData, getTooltip, isResizable, setContextMenu, setTooltip, skinProperty, tooltipPropertyMethods declared in class javafx.scene.layout.RegionbackgroundProperty, 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, widthPropertyMethods declared in class javafx.scene.ParentgetBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBoundsMethods declared in class javafx.scene.NodeaccessibleHelpProperty, 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, visiblePropertyMethods declared in class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods declared in interface javafx.css.StyleablegetStyleableNode, getStyleClass
- 
Property Details- 
converterTheStringConverterproperty.- See Also:
- getConverter(),- setConverter(StringConverter)
 
- 
selectedStateCallbackpublic final ObjectProperty<Callback<Integer,ObservableValue<Boolean>>> selectedStateCallbackPropertyProperty representing theCallbackthat is bound to by the CheckBox shown on screen.
 
- 
- 
Constructor Details- 
CheckBoxTableCellpublic CheckBoxTableCell()Creates a default CheckBoxTableCell.
- 
CheckBoxTableCellCreates a default CheckBoxTableCell with a customCallbackto retrieve an ObservableValue for a given cell index.- Parameters:
- getSelectedProperty- A- Callbackthat will return an- ObservableValuegiven an index from the TableColumn.
 
- 
CheckBoxTableCellpublic CheckBoxTableCell(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty, StringConverter<T> converter)Creates a CheckBoxTableCell with a custom string converter.- Parameters:
- getSelectedProperty- A- Callbackthat will return a- ObservableValuegiven an index from the TableColumn.
- converter- A StringConverter that, given an object of type T, will return a String that can be used to represent the object visually.
 
 
- 
- 
Method Details- 
forTableColumnpublic static <S> Callback<TableColumn<S,Boolean>,TableCell<S,Boolean>> forTableColumn(TableColumn<S,Boolean> column)Creates a cell factory for use in aTableColumncell factory. This method requires that the TableColumn be of typeBoolean.When used in a TableColumn, the CheckBoxCell is rendered with a CheckBox centered in the column. The ObservableValue<Boolean>contained within each cell in the column will be bound bidirectionally. This means that the CheckBox in the cell will set/unset this property based on user interactions, and the CheckBox will reflect the state of theObservableValue<Boolean>, if it changes externally).
- 
forTableColumnpublic static <S, T> Callback<TableColumn<S,T>,TableCell<S,T>> forTableColumn(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty)Creates a cell factory for use in aTableColumncell factory. This method requires that the TableColumn be of typeObservableValue<Boolean>.When used in a TableColumn, the CheckBoxCell is rendered with a CheckBox centered in the column. - Type Parameters:
- S- The type of the TableView generic type
- T- The type of the elements contained within the- TableColumninstance.
- Parameters:
- getSelectedProperty- A Callback that, given an object of type- TableColumn<S,T>, will return an- ObservableValue<Boolean>that represents whether the given item is selected or not. This- ObservableValue<Boolean>will be bound bidirectionally (meaning that the CheckBox in the cell will set/unset this property based on user interactions, and the CheckBox will reflect the state of the- ObservableValue<Boolean>, if it changes externally).
- Returns:
- A Callbackthat will return aTableCellthat is able to work on the type of element contained within the TableColumn.
 
- 
forTableColumnpublic static <S, T> Callback<TableColumn<S,T>,TableCell<S,T>> forTableColumn(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty, boolean showLabel)Creates a cell factory for use in aTableColumncell factory. This method requires that the TableColumn be of typeObservableValue<Boolean>.When used in a TableColumn, the CheckBoxCell is rendered with a CheckBox centered in the column. - Type Parameters:
- S- The type of the TableView generic type
- T- The type of the elements contained within the- TableColumninstance.
- Parameters:
- getSelectedProperty- A Callback that, given an object of type- TableColumn<S,T>, will return an- ObservableValue<Boolean>that represents whether the given item is selected or not. This- ObservableValue<Boolean>will be bound bidirectionally (meaning that the CheckBox in the cell will set/unset this property based on user interactions, and the CheckBox will reflect the state of the- ObservableValue<Boolean>, if it changes externally).
- showLabel- In some cases, it may be desirable to show a label in the TableCell beside the- CheckBox. By default a label is not shown, but by setting this to true the item in the cell will also have toString() called on it. If this is not the desired behavior, consider using- forTableColumn(javafx.util.Callback, javafx.util.StringConverter), which allows for you to provide a callback that specifies the label for a given row item.
- Returns:
- A Callbackthat will return aTableCellthat is able to work on the type of element contained within the TableColumn.
 
- 
forTableColumnpublic static <S, T> Callback<TableColumn<S,T>,TableCell<S,T>> forTableColumn(Callback<Integer,ObservableValue<Boolean>> getSelectedProperty, StringConverter<T> converter)Creates a cell factory for use in aTableColumncell factory. This method requires that the TableColumn be of typeObservableValue<Boolean>.When used in a TableColumn, the CheckBoxCell is rendered with a CheckBox centered in the column. - Type Parameters:
- S- The type of the TableView generic type
- T- The type of the elements contained within the- TableColumninstance.
- Parameters:
- getSelectedProperty- A Callback that, given an object of type- TableColumn<S,T>, will return an- ObservableValue<Boolean>that represents whether the given item is selected or not. This- ObservableValue<Boolean>will be bound bidirectionally (meaning that the CheckBox in the cell will set/unset this property based on user interactions, and the CheckBox will reflect the state of the- ObservableValue<Boolean>, if it changes externally).
- converter- A StringConverter that, give an object of type T, will return a String that can be used to represent the object visually. The default implementation in- forTableColumn(Callback, boolean)(when showLabel is true) is to simply call .toString() on all non-null items (and to just return an empty string in cases where the given item is null).
- Returns:
- A Callbackthat will return aTableCellthat is able to work on the type of element contained within the TableColumn.
 
- 
converterPropertyTheStringConverterproperty.- See Also:
- getConverter(),- setConverter(StringConverter)
 
- 
setConverterSets theStringConverterto be used in this cell.- Parameters:
- value- the- StringConverterto be used in this cell
 
- 
getConverterReturns theStringConverterused in this cell.- Returns:
- the StringConverterused in this cell
 
- 
selectedStateCallbackPropertypublic final ObjectProperty<Callback<Integer,ObservableValue<Boolean>>> selectedStateCallbackProperty()Property representing theCallbackthat is bound to by the CheckBox shown on screen.
- 
setSelectedStateCallbackSets theCallbackthat is bound to by the CheckBox shown on screen.- Parameters:
- value- the- Callbackthat is bound to by the CheckBox shown on screen
 
- 
getSelectedStateCallbackReturns theCallbackthat is bound to by the CheckBox shown on screen.- Returns:
- the Callbackthat is bound to by the CheckBox shown on screen
 
 
-