...
Header is the topmost table row showing names of columns. It is always visible as it does not scroll with content. It is a place where the user performs table column customization including column resizing, column rearrangement, column hiding/showing and sorting* sorting. Header can span multiple columns, if it shows* grouped shows grouped columns{* with } with the name of the group above individual column names.
...
- First click selects the clicked row/cell. Second click edits the cell with the associated cell editor.
- First click edits the clicked cell with the associated cell editor. No change in selection.
- First click invokes the cell action represented with a hyperlink, icon, button or check box. No change in selection.
- Mixed mode when the behavior depends on the cell content being clicked. E.g. if a drop down arrow is clicked it edits the cell; if a hyperlink is clicked it invokes an action; if a label is clicked it selects the cell.
Tree
By default, the tree is displayed in the left-most column, however, application developers are allowed to specify the column in which the tree is displayed..The most left column in JavaFX TreeTable control shows a tree.
A tree consists of nodes that can be opened and closed by interacting with a "turner" icon. The very first node in the tree is called root node and it is possible to hide it. Nodes that contain other nodes are called parents (these nodes have the "turner" icon); nodes that do not contain any other nodes are called leaf nodes (these nodes do not have the "turner" icon). Nodes can be opened by clicking on the "turner" icons or by double clicking the node name (note that if editing is enabled, double click will enter the edit mode).
...
In the multiple selection mode, one selected row is marked as an anchor. It indicates the beginning of a range selection when making the range selection with pointing device (SHIFT Click).
Note that selection in the tree should be preserved so when users select a child node and then close and reopen its parent, selection should still remain on that child node.
A tree table control with a selection and focus should A tree table control with a selection and focus should have "primary highlighting" to show selection. A tree table with a selection but without focus should show "secondary highlighting" for the selection. These states apply to root, parent, child, leaf node in both the open and closed states.
...
JavaFX TreeTable supports drag and drop of nodes (rows) and columns. To rearrange columns, users must drag a single item it doesn't need to be selected. The user can just drag the item's label (not a white space). Dragging on white space initiates multi-selection. To drag multiple items at once, the user needs to select them first. The default drag and drop action is cut-and-paste. It is possible to initiate copy-and-paste when holding CTRL key (OPTION key on Mac) during dragging.
To rearrange columns, users must drag a column header to a new position. When dropped, new position of the column is preserved. Please note that the most left column is designed to show a tree structure. It means that a column that is dropped in the most left column will show the tree structure.
Column rearrangement in a tree table control
Similarly to column rearrangement, users can rearrange nodes within the tree by dragging them to a new location. When dropped, the tree is rearranged and its new state is preserved. Note that pressing CTRL key (OPTION key on Mac) while dragging a node to a new location creates a copy of that node in the new location.
column header to a new position. When dropped, new position of the column is preserved.
Column
Node rearrangement in a tree table control
...