- java.lang.Object
-
- javafx.scene.control.FocusModel<T>
-
- 已知直接子类:
-
TableFocusModel
public abstract class FocusModel<T> extends Object
FocusModel实现的抽象基类。- 从以下版本开始:
- JavaFX 2.0
-
-
Property Summary
Properties Type Property 描述 ReadOnlyIntegerProperty
focusedIndex
FocusModel中具有焦点的当前项目的索引。ReadOnlyObjectProperty<T>
focusedItem
FocusModel中的当前项目具有重点。
-
构造方法摘要
构造方法 Constructor 描述 FocusModel()
创建默认的FocusModel实例。
-
方法摘要
所有方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 void
focus(int index)
导致给定索引处的项目接收焦点。ReadOnlyIntegerProperty
focusedIndexProperty()
FocusModel中具有焦点的当前项目的索引。ReadOnlyObjectProperty<T>
focusedItemProperty()
FocusModel中的当前项目具有重点。void
focusNext()
尝试将焦点放在当前焦点集中的行之后。void
focusPrevious()
尝试将重点放在目前重点集中的行之前。int
getFocusedIndex()
获取focusIndex属性的值。T
getFocusedItem()
获取对focusItem的值。protected abstract int
getItemCount()
返回数据模型中支配控件的项目数。protected abstract T
getModelItem(int index)
返回给定索引处的项目。boolean
isFocused(int index)
方便的方法来通知给定的索引当前是否集中在此SelectionModel中。
-
-
-
Property Detail
-
focusedIndex
public final ReadOnlyIntegerProperty focusedIndexProperty
FocusModel中具有焦点的当前项目的索引。 这可能是-1,但只有当控件为空时。 如果控件本身没有聚焦,则如果控件本身被集中,则此属性仍将引用将接收键盘焦点的行索引。- 另请参见:
-
getFocusedIndex()
-
focusedItem
public final ReadOnlyObjectProperty<T> focusedItemProperty
FocusModel中的当前项目具有重点。 这可能是null,但只有当控件为空时。 如果控件本身没有聚焦,如果控件本身集中在一起,该属性仍将引用将接收键盘焦点的项目。- 另请参见:
-
getFocusedItem()
-
-
方法详细信息
-
focusedIndexProperty
public final ReadOnlyIntegerProperty focusedIndexProperty()
FocusModel中具有焦点的当前项目的索引。 这可能是-1,但只有当控件为空时。 如果控件本身没有聚焦,则如果控件本身被集中,则此属性仍将引用将接收键盘焦点的行索引。- 另请参见:
-
getFocusedIndex()
-
getFocusedIndex
public final int getFocusedIndex()
获取focusIndex属性的值。- Property description:
- FocusModel中具有焦点的当前项目的索引。 这可能是-1,但只有当控件为空时。 如果控件本身没有聚焦,则如果控件本身被集中,则此属性仍将引用将接收键盘焦点的行索引。
-
focusedItemProperty
public final ReadOnlyObjectProperty<T> focusedItemProperty()
FocusModel中的当前项目具有重点。 这可能是null,但只有当控件为空时。 如果控件本身没有聚焦,如果控件本身集中在一起,该属性仍将引用将接收键盘焦点的项目。- 另请参见:
-
getFocusedItem()
-
getFocusedItem
public final T getFocusedItem()
获取对focusItem的值。- Property description:
- FocusModel中的当前项目具有重点。 这可能是null,但只有当控件为空时。 如果控件本身没有聚焦,如果控件本身集中在一起,该属性仍将引用将接收键盘焦点的项目。
-
getItemCount
protected abstract int getItemCount()
返回数据模型中支配控件的项目数。 一个例子就是ListView焦点模型可能会返回listView.getItems().size()
。 可聚焦索引的有效范围在0和此方法返回的任何值之间。- 结果
- 支持控制的数据模型中的项目数
-
getModelItem
protected abstract T getModelItem(int index)
返回给定索引处的项目。 使用ListView的示例将是listView.getItems().get(index)
。- 参数
-
index
- 从底层数据模型请求的项目的索引。 - 结果
- 如果索引超出范围,则返回null,或者与给定索引相关的类型T的元素。
-
isFocused
public boolean isFocused(int index)
方便的方法来通知给定的索引当前是否集中在此SelectionModel中。 在功能上等同于调用
getFocusedIndex() == index
- 参数
-
index
- 检查目前是否关注的索引。 - 结果
- 如果给定的索引是集中的,则为真,否则为false。
-
focus
public void focus(int index)
导致给定索引处的项目接收焦点。 这不会导致当前的选择更改。 更新focusItem和focusedIndex属性,使focusedIndex = -1
除非0 <= index < model size
。- 参数
-
index
- 要获取焦点的项目的索引。
-
focusPrevious
public void focusPrevious()
尝试将重点放在目前重点集中的行之前。 如果当前焦点所有者是第一行,或者是-1(表示没有当前焦点所有者),调用此方法将不会有结果。
-
focusNext
public void focusNext()
尝试将焦点放在当前焦点集中的行之后。 如果当前焦点所有者是最后一行,调用此方法将不会有结果。
-
-