java.lang.Object
javafx.scene.control.FocusModel<T>
javafx.scene.control.TableFocusModel<S,TableColumn<S,?>>
javafx.scene.control.TableView.TableViewFocusModel<S>
public static class TableView.TableViewFocusModel<S> extends TableFocusModel<S,TableColumn<S,?>>
A
FocusModel
with additional functionality to support the requirements
of a TableView control.- Since:
- JavaFX 2.0
- See Also:
TableView
-
Property Summary
Properties Type Property Description ReadOnlyObjectProperty<TablePosition>
focusedCell
The position of the current item in the TableView which has the focus.Properties inherited from class javafx.scene.control.FocusModel
focusedIndex, focusedItem
-
Constructor Summary
Constructors Constructor Description TableViewFocusModel(TableView<S> tableView)
Creates a default TableViewFocusModel instance that will be used to manage focus of the provided TableView control. -
Method Summary
Modifier and Type Method Description void
focus(int index)
Causes the item at the given index to receive the focus.void
focus(int row, TableColumn<S,?> column)
Causes the item at the given index to receive the focus.void
focus(TablePosition pos)
Convenience method for setting focus on a particular row or cell using aTablePosition
.void
focusAboveCell()
Attempts to move focus to the cell above the currently focused cell.void
focusBelowCell()
Attempts to move focus to the cell below the currently focused cell.ReadOnlyObjectProperty<TablePosition>
focusedCellProperty()
The position of the current item in the TableView which has the focus.void
focusLeftCell()
Attempts to move focus to the cell to the left of the currently focused cell.void
focusNext()
Attempts to give focus to the row after to the currently focused row.void
focusPrevious()
Attempts to give focus to the row previous to the currently focused row.void
focusRightCell()
Attempts to move focus to the cell to the right of the the currently focused cell.TablePosition
getFocusedCell()
Gets the value of the property focusedCell.protected int
getItemCount()
Returns the number of items in the data model that underpins the control.protected S
getModelItem(int index)
Returns the item at the given index.boolean
isFocused(int row, TableColumn<S,?> column)
Tests whether the row / cell at the given location currently has the focus within the TableView.Methods inherited from class javafx.scene.control.FocusModel
focusedIndexProperty, focusedItemProperty, getFocusedIndex, getFocusedItem, isFocused
-
Property Details
-
focusedCell
The position of the current item in the TableView which has the focus.- See Also:
getFocusedCell()
-
-
Constructor Details
-
TableViewFocusModel
Creates a default TableViewFocusModel instance that will be used to manage focus of the provided TableView control.- Parameters:
tableView
- The tableView upon which this focus model operates.- Throws:
NullPointerException
- The TableView argument can not be null.
-
-
Method Details
-
getItemCount
protected int getItemCount()Returns the number of items in the data model that underpins the control. An example would be that a ListView focus model would likely returnlistView.getItems().size()
. The valid range of focusable indices is between 0 and whatever is returned by this method.- Specified by:
getItemCount
in classFocusModel<S>
- Returns:
- the number of items in the data model that underpins the control
-
getModelItem
Returns the item at the given index. An example using ListView would belistView.getItems().get(index)
.- Specified by:
getModelItem
in classFocusModel<S>
- Parameters:
index
- The index of the item that is requested from the underlying data model.- Returns:
- Returns null if the index is out of bounds, or an element of type T that is related to the given index.
-
focusedCellProperty
The position of the current item in the TableView which has the focus.- See Also:
getFocusedCell()
-
getFocusedCell
Gets the value of the property focusedCell.- Property description:
- The position of the current item in the TableView which has the focus.
-
focus
Causes the item at the given index to receive the focus.- Specified by:
focus
in classTableFocusModel<S,TableColumn<S,?>>
- Parameters:
row
- The row index of the item to give focus to.column
- The column of the item to give focus to. Can be null.
-
focus
Convenience method for setting focus on a particular row or cell using aTablePosition
.- Parameters:
pos
- The table position where focus should be set.
-
isFocused
Tests whether the row / cell at the given location currently has the focus within the TableView.- Specified by:
isFocused
in classTableFocusModel<S,TableColumn<S,?>>
- Parameters:
row
- the rowcolumn
- the column- Returns:
- true if the row / cell at the given location currently has the focus within the UI control
-
focus
public void focus(int index)Causes the item at the given index to receive the focus. This does not cause the current selection to change. Updates the focusedItem and focusedIndex properties such thatfocusedIndex = -1
unless
.0 <= index < model size
- Overrides:
focus
in classFocusModel<S>
- Parameters:
index
- The index of the item to get focus.
-
focusAboveCell
public void focusAboveCell()Attempts to move focus to the cell above the currently focused cell.- Specified by:
focusAboveCell
in classTableFocusModel<S,TableColumn<S,?>>
-
focusBelowCell
public void focusBelowCell()Attempts to move focus to the cell below the currently focused cell.- Specified by:
focusBelowCell
in classTableFocusModel<S,TableColumn<S,?>>
-
focusLeftCell
public void focusLeftCell()Attempts to move focus to the cell to the left of the currently focused cell.- Specified by:
focusLeftCell
in classTableFocusModel<S,TableColumn<S,?>>
-
focusRightCell
public void focusRightCell()Attempts to move focus to the cell to the right of the the currently focused cell.- Specified by:
focusRightCell
in classTableFocusModel<S,TableColumn<S,?>>
-
focusPrevious
public void focusPrevious()Attempts to give focus to the row previous to the currently focused row. If the current focus owner is the first row, or is -1 (representing that there is no current focus owner), calling this method will have no result.- Overrides:
focusPrevious
in classFocusModel<S>
-
focusNext
public void focusNext()Attempts to give focus to the row after to the currently focused row. If the current focus owner is the last row, calling this method will have no result.- Overrides:
focusNext
in classFocusModel<S>
-