- 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.CheckBoxTreeCell<T>
-
- 型パラメータ:
T
- TreeView TreeItemインスタンスに含まれている要素の型。
- すべての実装されたインタフェース:
Styleable
,EventTarget
,Skinnable
public class CheckBoxTreeCell<T> extends TreeCell<T>
セル内にCheckBox
ノードを描画し、それに加えて共通の操作に対するサポート(詳細は後述)を提供するTreeCell
実装を含むクラス。CheckBoxでのTreeViewの作成を簡易化するために、
CheckBoxTreeItem
というコンビニエンス・クラスが提供されています。 開発者は、TreeViewツリー構造を構築する場合、通常のTreeItem
クラスではなく、このクラスを使用することを強くお薦めします。 これら2つのクラスを組み合せる方法の例は、CheckBoxTreeItemのAPIドキュメントを参照してください。TreeViewで使用される場合、CheckBoxCellは公開ノード(つまり、矢印)の右にCheckBoxを配置してレンダリングされます。
TreeItem.getValue()
に格納されているアイテムでは、StringConverterが呼び出され、このテキストが水平方向の残りのすべてのスペースを占めるようになります。 また、CheckBoxTreeItem
を使用して、TreeViewは次のような状況を自動的に処理します。- 子を持つアイテムの横の
CheckBox
をクリックすると、すべての子も選択または選択解除されます。 - 親を持つアイテムの横の
CheckBox
をクリックすると、親の状態が切り替わる可能性があります。 たとえば、単一の子を選択すると、親は不確定になります(複数の子の部分的選択を示します)。 続行してすべての子を選択すると、親も選択された状態になります。 これは再帰的で、すべての親ノードは予期したように更新されます。
CheckBoxTreeItem
の使用が望ましくないと判断した場合は、TreeItem
インスタンスを入力として、ObservableValue<Boolean>
を返すことができるCallback
が提供される、いずれかのコンストラクタを呼び出す必要があります。 このObservableValue<Boolean>
は、指定されたTreeItem
のブール型状態を表す必要があります。CheckBoxTreeCellはCheckBoxをライブ・レンダリングすること、つまり、CheckBoxは常に対話型で、ユーザーが直接切り替えることに注意してください。 これは、セルがその
editing state
に入る必要がないことを意味します(通常は、ユーザーがセル上をダブルクリックすると編集状態になります)。 これによる副次的影響は、通常の編集コールバック(on edit commit
など)が呼び出されないことです。 変更の通知を受け取る必要がある場合は、CheckBoxで操作されるブール型プロパティを直接監視することをお薦めします。- 導入されたバージョン:
- JavaFX 2.2
-
-
プロパティのサマリー
プロパティ Type プロパティ 説明 ObjectProperty<StringConverter<TreeItem<T>>>
converter
StringConverter
プロパティ。ObjectProperty<Callback<TreeItem<T>,ObservableValue<Boolean>>>
selectedStateCallback
画面上に表示されるCheckBoxでバインドされるCallback
を表すプロパティ。-
クラス javafx.scene.control.Controlで宣言されたプロパティ
contextMenu、skin、tooltip
-
クラス javafx.scene.control.IndexedCellで宣言されたプロパティ
index
-
クラス javafx.scene.control.Labeledで宣言されたプロパティ
alignment、contentDisplay、ellipsisString、font、graphic、graphicTextGap、labelPadding、lineSpacing、mnemonicParsing、textAlignment、textFill、textOverrun、text、underline、wrapText
-
クラス 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.Parentで宣言されたプロパティ
needsLayout
-
クラス javafx.scene.layout.Regionで宣言されたプロパティ
background、border、cacheShape、centerShape、height、insets、maxHeight、maxWidth、minHeight、minWidth、opaqueInsets、padding、prefHeight、prefWidth、scaleShape、shape、snapToPixel、width
-
クラス javafx.scene.control.TreeCellで宣言されたプロパティ
disclosureNode、treeItem、treeView
-
-
フィールドのサマリー
-
クラス javafx.scene.Nodeで宣言されたフィールド
BASELINE_OFFSET_SAME_AS_HEIGHT
-
クラス javafx.scene.layout.Regionで宣言されたフィールド
USE_COMPUTED_SIZE、USE_PREF_SIZE
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 CheckBoxTreeCell()
デフォルトのTreeItem
ではなく、TreeViewがCheckBoxTreeItem
インスタンスで構築されているとみなすデフォルトのCheckBoxTreeCell
を作成します。CheckBoxTreeCell(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty)
セル・ファクトリを経由してTreeViewコントロールで使用するCheckBoxTreeCell
を作成します。CheckBoxTreeCell(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)
セル・ファクトリを経由してTreeViewコントロールで使用するCheckBoxTreeCell
を作成します。
-
メソッドのサマリー
すべてのメソッド 静的メソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 ObjectProperty<StringConverter<TreeItem<T>>>
converterProperty()
StringConverter
プロパティ。static <T> Callback<TreeView<T>,TreeCell<T>>
forTreeView()
TreeViewコントロールで使用するセル・ファクトリを作成しますが、このセル・ファクトリをTreeViewで使用する際には、TreeViewルートおよびすべての子が、通常使用されるデフォルトのTreeItem
ではなくCheckBoxTreeItem
のインスタンスであることが重要な前提となります。static <T> Callback<TreeView<T>,TreeCell<T>>
forTreeView(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty)
TreeViewコントロールで使用するセル・ファクトリを作成します。static <T> Callback<TreeView<T>,TreeCell<T>>
forTreeView(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)
TreeViewコントロールで使用するセル・ファクトリを作成します。StringConverter<TreeItem<T>>
getConverter()
このセルで使用するStringConverter
を返します。Callback<TreeItem<T>,ObservableValue<Boolean>>
getSelectedStateCallback()
画面上に表示されるCheckBoxによってバインドされるCallback
を返します。ObjectProperty<Callback<TreeItem<T>,ObservableValue<Boolean>>>
selectedStateCallbackProperty()
画面上に表示されるCheckBoxでバインドされるCallback
を表すプロパティ。void
setConverter(StringConverter<TreeItem<T>> value)
このセルで使用するStringConverter
を設定します。void
setSelectedStateCallback(Callback<TreeItem<T>,ObservableValue<Boolean>> value)
画面上に表示されるCheckBoxによってバインドされるCallback
を設定します。void
updateItem(T item, boolean empty)
updateItemメソッドは、開発者にとって、呼び出すことはできないが、オーバーライドしてセルのビジュアルをカスタマイズできる、最適なメソッドです。-
クラス 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.Controlで宣言されたメソッド
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, createDefaultSkin, getContextMenu, getCssMetaData, getTooltip, isResizable, setContextMenu, setTooltip, skinProperty, tooltipProperty
-
クラス javafx.scene.control.IndexedCellで宣言されたメソッド
getIndex、indexProperty、updateIndex
-
クラス 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.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
-
クラス java.lang.Objectで宣言されたメソッド
clone、equals、finalize、getClass、hashCode、notify、notifyAll、wait、wait、wait
-
クラス javafx.scene.Parentで宣言されたメソッド
getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
-
クラス 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.css.Styleableで宣言されたメソッド
getStyleableNode, getStyleClass
-
クラス javafx.scene.control.TreeCellで宣言されたメソッド
disclosureNodeProperty, getDisclosureNode, getTreeItem, getTreeView, setDisclosureNode, treeItemProperty, treeViewProperty, updateTreeItem, updateTreeView
-
-
-
-
プロパティの詳細
-
converter
public final ObjectProperty<StringConverter<TreeItem<T>>> converterProperty
StringConverter
プロパティ。- 戻り値:
StringConverter
プロパティ
-
selectedStateCallback
public final ObjectProperty<Callback<TreeItem<T>,ObservableValue<Boolean>>> selectedStateCallbackProperty
画面上に表示されるCheckBoxでバインドされるCallback
を表すプロパティ。
-
-
コンストラクタの詳細
-
CheckBoxTreeCell
public CheckBoxTreeCell()
デフォルトのTreeItem
ではなく、TreeViewがCheckBoxTreeItem
インスタンスで構築されているとみなすデフォルトのCheckBoxTreeCell
を作成します。CheckBoxTreeItem
を使用すると、ツリーの各アイテムの選択済状態と不確定状態が内部的に管理されます。
-
CheckBoxTreeCell
public CheckBoxTreeCell(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty)
セル・ファクトリを経由してTreeViewコントロールで使用するCheckBoxTreeCell
を作成します。CheckBoxTreeCell()
とは異なり、このメソッドはTreeViewのすべてのTreeItemインスタンスがCheckBoxTreeItem
であるとはみなしません。このメソッドを呼び出すには、型TreeItem<T>のオブジェクトを指定すると、指定されたアイテムが選択されているかどうかを表す
ObservableValue<Boolean>
を返すCallback
を提供する必要があります。ObservableValue<Boolean>
は双方向にバインドされます(つまり、セルのCheckBoxが、ユーザー操作に基づいてこのプロパティを設定または設定解除すること、およびCheckBoxは変更が外部で行われた場合、ObservableValue<Boolean>
の状態を反映します)。アイテムが
CheckBoxTreeItem
インスタンスでない場合、親TreeItemと子TreeItemの状態の更新の処理は開発者の責任で行います。 これは、このクラスにTreeItemを指定すると、提供されているObservableValue<Boolean>
を単に切り替えるのみで、それ以上のことは実行しないことを意味します。 この機能は外部で実装でき、その場合は、オブザーバをObservableValue<Boolean>
に追加し、必要に応じて他のプロパティの状態を切り替えます。- パラメータ:
getSelectedProperty
- 指定されたアイテムが選択されているかどうかを表すObservableValue<Boolean>
を返すCallback
。
-
CheckBoxTreeCell
public CheckBoxTreeCell(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)
セル・ファクトリを経由してTreeViewコントロールで使用するCheckBoxTreeCell
を作成します。CheckBoxTreeCell()
とは異なり、このメソッドはTreeViewのすべてのTreeItemインスタンスがCheckBoxTreeItem
であるとはみなしません。このメソッドを呼び出すには、型TreeItem<T>のオブジェクトを指定すると、指定されたアイテムが選択されているかどうかを表す
ObservableValue<Boolean>
を返すCallback
を提供する必要があります。ObservableValue<Boolean>
は双方向にバインドされます(つまり、セルのCheckBoxが、ユーザー操作に基づいてこのプロパティを設定または設定解除すること、およびCheckBoxは変更が外部で行われた場合、ObservableValue<Boolean>
の状態を反映します)。アイテムが
CheckBoxTreeItem
インスタンスでない場合、親TreeItemと子TreeItemの状態の更新の処理は開発者の責任で行います。 これは、このクラスにTreeItemを指定すると、提供されているObservableValue<Boolean>
を単に切り替えるのみで、それ以上のことは実行しないことを意味します。 この機能は外部で実装でき、その場合は、オブザーバをObservableValue<Boolean>
に追加し、必要に応じて他のプロパティの状態を切り替えます。- パラメータ:
getSelectedProperty
- 指定されたアイテムが選択されているかどうかを表すObservableValue<Boolean>
を返すCallback
。converter
- TreeItem<T>型のオブジェクトを与えるStringConverterは、オブジェクトを視覚的に表現するために使用できるStringを返します。
-
-
メソッドの詳細
-
forTreeView
public static <T> Callback<TreeView<T>,TreeCell<T>> forTreeView()
TreeViewコントロールで使用するセル・ファクトリを作成しますが、このセル・ファクトリをTreeViewで使用する際には、TreeViewルートおよびすべての子が、通常使用されるデフォルトのTreeItem
ではなくCheckBoxTreeItem
のインスタンスであることが重要な前提となります。TreeViewで使用される場合、CheckBoxCellは公開ノード(つまり、矢印)の右にCheckBoxを配置してレンダリングされます。
TreeItem.getValue()
に格納されているアイテムでは、StringConverterが呼び出され、このテキストが水平方向の残りのすべてのスペースを占めるようになります。 また、CheckBoxTreeItem
を使用して、TreeViewは次のような状況を自動的に処理します。- 子を持つアイテムの横の
CheckBox
をクリックすると、すべての子も選択または選択解除されます。 - 親を持つアイテムの横の
CheckBox
をクリックすると、親の状態が切り替わる可能性があります。 たとえば、単一の子を選択すると、親は不確定になります(複数の子の部分的選択を示します)。 続行してすべての子を選択すると、親も選択された状態になります。 これは再帰的で、すべての親ノードは予期したように更新されます。
Javaでの制限があるため、このメソッドを使用する場合は明示的なキャストを指定する必要があります。 例:
final TreeView<String> treeView = new TreeView<String>(); treeView.setCellFactory(CheckBoxCell.<String>forTreeView());
- 型パラメータ:
T
-CheckBoxTreeItem
インスタンスに含まれている要素の型。- 戻り値:
- TreeViewルート、およびそのすべての子に含まれている要素の型で動作できるTreeCellを返す
Callback
(再帰的)。
- 子を持つアイテムの横の
-
forTreeView
public static <T> Callback<TreeView<T>,TreeCell<T>> forTreeView(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty)
TreeViewコントロールで使用するセル・ファクトリを作成します。forTreeView()
とは異なり、このメソッドはTreeViewのすべてのTreeItemインスタンスがCheckBoxTreeItem
インスタンスであるとはみなしません。TreeViewで使用される場合、CheckBoxCellは公開ノード(つまり、矢印)の右にCheckBoxを配置してレンダリングされます。
TreeItem.getValue()
に格納されているアイテムでは、StringConverterが呼び出され、このテキストが水平方向の残りのすべてのスペースを占めるようになります。forTreeView()
とは異なり、このセル・ファクトリは、親TreeItemまたは子TreeItemの状態の更新を処理しません。提供されているObservableValue<Boolean>
を単に切り替えるのみで、それ以上のことは実行しません。 この機能は外部で実装でき、その場合は、オブザーバをObservableValue<Boolean>
に追加し、必要に応じて他のプロパティの状態を切り替えます。- 型パラメータ:
T
-TreeItem
インスタンスに含まれている要素の型。- パラメータ:
getSelectedProperty
- TreeItem<T>型のオブジェクトを与えられたCallback
は、指定されたアイテムが選択されているかどうかを表すObservableValue<Boolean>
を返します。ObservableValue<Boolean>
は双方向にバインドされます(つまり、セルのCheckBoxが、ユーザー操作に基づいてこのプロパティを設定または設定解除すること、およびCheckBoxは変更が外部で行われた場合、ObservableValue<Boolean>
の状態を反映します)。- 戻り値:
- TreeViewルート、およびそのすべての子に含まれている要素の型で動作できるTreeCellを返す
Callback
(再帰的)。
-
forTreeView
public static <T> Callback<TreeView<T>,TreeCell<T>> forTreeView(Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)
TreeViewコントロールで使用するセル・ファクトリを作成します。forTreeView()
とは異なり、このメソッドは、TreeViewのすべてのTreeItemインスタンスがCheckBoxTreeItem
であるとはみなしません。TreeViewで使用される場合、CheckBoxCellは公開ノード(つまり、矢印)の右にCheckBoxを配置してレンダリングされます。
TreeItem.getValue()
に格納されているアイテムでは、StringConverterが呼び出され、このテキストは水平方向の残りのすべてのスペースを占めるようになります。forTreeView()
とは異なり、このセル・ファクトリは、親TreeItemまたは子TreeItemの状態の更新を処理しません。提供されているObservableValue<Boolean>
を単に切り替えるのみで、それ以上のことは実行しません。 この機能は外部で実装でき、その場合は、オブザーバをObservableValue<Boolean>
に追加し、必要に応じて他のプロパティの状態を切り替えます。- 型パラメータ:
T
-TreeItem
インスタンスに含まれている要素の型。- パラメータ:
getSelectedProperty
- TreeItem<T>型のオブジェクトを指定すると、指定されたアイテムが選択されているかどうかを表すObservableValue<Boolean>
が返されるコールバックです。ObservableValue<Boolean>
は双方向にバインドされます(つまり、セルのCheckBoxが、ユーザー操作に基づいてこのプロパティを設定または設定解除すること、およびCheckBoxは変更が外部で行われた場合、ObservableValue<Boolean>
の状態を反映します)。converter
- TreeItem<T>型のオブジェクトを与えるStringConverterは、オブジェクトを視覚的に表現するために使用できるStringを返します。forTreeView(Callback)
のデフォルト実装は、すべての非nullアイテムでtoString()を単に呼び出します(指定されたアイテムがnullの場合、単に空の文字列を返します)。- 戻り値:
- TreeViewルート、およびそのすべての子に含まれている要素の型で動作できるTreeCellを返す
Callback
(再帰的)。
-
converterProperty
public final ObjectProperty<StringConverter<TreeItem<T>>> converterProperty()
StringConverter
プロパティ。- 戻り値:
StringConverter
プロパティ
-
setConverter
public final void setConverter(StringConverter<TreeItem<T>> value)
このセルで使用するStringConverter
を設定します。- パラメータ:
value
- このセルで使用されるStringConverter
-
getConverter
public final StringConverter<TreeItem<T>> getConverter()
このセルで使用するStringConverter
を返します。- 戻り値:
- このセルで使用される
StringConverter
-
selectedStateCallbackProperty
public final ObjectProperty<Callback<TreeItem<T>,ObservableValue<Boolean>>> selectedStateCallbackProperty()
画面上に表示されるCheckBoxでバインドされるCallback
を表すプロパティ。
-
setSelectedStateCallback
public final void setSelectedStateCallback(Callback<TreeItem<T>,ObservableValue<Boolean>> value)
画面上に表示されるCheckBoxによってバインドされるCallback
を設定します。- パラメータ:
value
- 画面に表示されるCheckBoxにバインドされているCallback
-
getSelectedStateCallback
public final Callback<TreeItem<T>,ObservableValue<Boolean>> getSelectedStateCallback()
画面上に表示されるCheckBoxによってバインドされるCallback
を返します。- 戻り値:
- 画面に表示されるCheckBoxにバインドされている
Callback
-
updateItem
public void updateItem(T item, boolean empty)
クラスからコピーされた説明:Cell
updateItemメソッドは、開発者にとって、呼び出すことはできないが、オーバーライドしてセルのビジュアルをカスタマイズできる、最適なメソッドです。 つまり、開発者は、コードでこのメソッドを呼び出さないようにしてください。このメソッドは、ListView
コントロールなどのUIコントロールによってのみ呼び出されるようにする必要があります。 ただし、updateItemメソッドが存在する理由は、開発者がカスタム・セル・ファクトリ(ListViewcell 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()); } }
このコード・サンプルには次の2つの重要なポイントがあることに注意してください。
- super.updateItem(T, boolean)メソッドを呼び出します。 これを行わないと、itemプロパティとemptyプロパティが正しく設定されず、グラフィカルな問題が発生する可能性があります。
empty
状態をテストし、trueの場合は、textプロパティとgraphicプロパティをnullに設定します。 これを行わないと、ほぼ確実に、エンド・ユーザーに対して予想外のグラフィカル・アーティファクトがセル内に表示されます。
- オーバーライド:
- クラス
Cell<T>
のupdateItem
- パラメータ:
item
- セルの新しいアイテム。empty
- このセルがリストからのデータを表しているかどうか。 空の場合、いずれのドメイン・データも表しませんが、空の行のレンダリングに使用されるセルとなります。
-
-