Module  java.desktop
软件包  javax.swing

Class LayoutFocusTraversalPolicy

  • All Implemented Interfaces:
    Serializable


    public class LayoutFocusTraversalPolicy
    extends SortingFocusTraversalPolicy
    implements Serializable
    一个SortingFocusTraversalPolicy,它根据大小,位置和方向对组件进行排序。 基于它们的大小和位置,组件大致分为行和列。 对于具有水平方向的容器,列从左到右或从右到左运行,行从上到下运行。 对于具有垂直方向的容器,列从上到下运行,行从左到右或从右到左运行。 详情请参阅ComponentOrientation 在继续下一行之前,一行中的所有列都将完全遍历。
    从以下版本开始:
    1.4
    另请参见:
    ComponentOrientationSerialized Form
    • 构造方法详细信息

      • LayoutFocusTraversalPolicy

        public LayoutFocusTraversalPolicy​()
        构造一个LayoutFocusTraversalPolicy。
    • 方法详细信息

      • getComponentAfter

        public Component getComponentAfter​(Container aContainer,
                                           Component aComponent)
        返回在aComponent之后应该接收焦点的Component。 aContainer必须是aComponent的焦点循环根。

        默认情况下,LayoutFocusTraversalPolicy隐式地转移焦点下循环。 也就是说,在正常聚焦遍历期间,在聚焦周期根之后遍历的组件将是focus-cycle-root的默认组件对焦。 可以使用setImplicitDownCycleTraversal方法禁用此行为。

        如果aContainer是focus traversal policy provider ,焦点总是转移到周期。

        重写:
        getComponentAfterSortingFocusTraversalPolicy
        参数
        aContainer - aComponent或焦点遍历策略提供程序的焦点循环根
        aComponent - aContainer的一个(可能是间接的)子,或者一个 aComponent本身
        结果
        应该在aComponent之后接收焦点的组件,如果没有找到合适的组件,则为null
        异常
        IllegalArgumentException - 如果aContainer不是aComponent或焦点遍历策略提供程序的焦点循环根,或者aContainer或aComponent为null
      • getComponentBefore

        public Component getComponentBefore​(Container aContainer,
                                            Component aComponent)
        返回应该在aComponent之前接收焦点的Component。 aContainer必须是aComponent的焦点循环根。

        默认情况下,LayoutFocusTraversalPolicy隐式地转移焦点下循环。 也就是说,在正常聚焦遍历期间,在聚焦周期根之后遍历的组件将是focus-cycle-root的默认组件对焦。 可以使用setImplicitDownCycleTraversal方法禁用此行为。

        如果aContainer是focus traversal policy provider ,焦点总是被转移到周期。

        重写:
        getComponentBeforeSortingFocusTraversalPolicy
        参数
        aContainer - aComponent或焦点遍历策略提供程序的焦点循环根
        aComponent - aContainer的一个(可能是间接的)孩子,或者一个 aComponent本身
        结果
        应该在aComponent之前收到焦点的组件,如果没有找到合适的组件,则为null
        异常
        IllegalArgumentException - 如果aContainer不是aComponent或焦点遍历策略提供程序的焦点循环根,或者aContainer或aComponent为null
      • getFirstComponent

        public Component getFirstComponent​(Container aContainer)
        返回遍历周期中的第一个Component。 该方法用于确定当向前方向遍历包装时要聚焦的下一个组件。
        重写:
        getFirstComponentSortingFocusTraversalPolicy
        参数
        aContainer - 要返回其第一个组件的组件或焦点遍历策略提供程序的焦点循环根
        结果
        aContainer遍历周期中的第一个组件,如果没有找到合适的组件,则返回null
        异常
        IllegalArgumentException - 如果aContainer为空
      • getLastComponent

        public Component getLastComponent​(Container aContainer)
        返回遍历周期中的最后一个组件。 该方法用于确定当相反方向遍历包装时要聚焦的下一个组件。
        重写:
        getLastComponentSortingFocusTraversalPolicy
        参数
        aContainer - 要返回其最后一个组件的组件或焦点遍历策略提供程序的焦点循环根
        结果
        aContainer遍历周期中的最后一个组件,如果没有找到合适的组件,则返回null
        异常
        IllegalArgumentException - 如果aContainer为空