public abstract class FocusTraversalPolicy extends Object
一个FocusTraversalPolicy的核心责任是提供确定的下一个组件的焦点时,通过向前或向后的UI算法。每个focustraversalpolicy还必须确定第一,提供算法上,在遍历循环默认组件。第一和最后一个组件被使用时,正常的前向和后向遍历,分别,包。默认组件是第一个接收焦点时,遍历到一个新的焦点遍历周期。一个focustraversalpolicy可以确定窗口的初始组件提供一个算法。当第一个窗口是第一个可见的时候,这个初始组件是第一个接收焦点的。
FocusTraversalPolicy考虑到focus traversal policy providers。当搜索第一/最后一个/下一个/上一个组件时,如果遇到一个焦点遍历策略提供程序,它的焦点遍历策略用于执行搜索操作。
请看 How to Use the Focus Subsystem,java教程中的一部分,和更多的信息Focus Specification。
Container.setFocusTraversalPolicy(java.awt.FocusTraversalPolicy)
,
Container.getFocusTraversalPolicy()
,
Container.setFocusCycleRoot(boolean)
,
Container.isFocusCycleRoot(java.awt.Container)
,
Container.setFocusTraversalPolicyProvider(boolean)
,
Container.isFocusTraversalPolicyProvider()
,
KeyboardFocusManager.setDefaultFocusTraversalPolicy(java.awt.FocusTraversalPolicy)
,
KeyboardFocusManager.getDefaultFocusTraversalPolicy()
Constructor and Description |
---|
FocusTraversalPolicy() |
Modifier and Type | Method and Description |
---|---|
abstract Component |
getComponentAfter(Container aContainer, Component aComponent)
返回后,应确定接收焦点的组件。
|
abstract Component |
getComponentBefore(Container aContainer, Component aComponent)
返回前一接收焦点的组件。
|
abstract Component |
getDefaultComponent(Container aContainer)
返回焦点的默认组件。
|
abstract Component |
getFirstComponent(Container aContainer)
返回遍历循环中的第一个组件。
|
Component |
getInitialComponent(Window window)
返回第一次可见的窗口时,该组件的接收焦点的组件。
|
abstract Component |
getLastComponent(Container aContainer)
返回遍历周期中的最后一个组件。
|
public abstract Component getComponentAfter(Container aContainer, Component aComponent)
aContainer
-组件的焦点循环根或焦点遍历策略提供者
aComponent
-(可能是间接的)容器或容器本身的孩子,
IllegalArgumentException
如果容器不是一个部件或一个焦点遍历策略提供者焦点循环根,或者一个容器或一个是空的
public abstract Component getComponentBefore(Container aContainer, Component aComponent)
aContainer
-组件的焦点循环根或焦点遍历策略提供者
aComponent
-(可能是间接的)容器或容器本身的孩子,
IllegalArgumentException
如果容器不是一个部件或一个焦点遍历策略提供者焦点循环根,或者一个容器或一个是空的
public abstract Component getFirstComponent(Container aContainer)
aContainer
-焦点循环根或焦点遍历策略提供者的第一个组件是被退回
IllegalArgumentException
如果容器为空
public abstract Component getLastComponent(Container aContainer)
aContainer
-焦点循环根或焦点遍历策略供应商的最后一部分是被返回
IllegalArgumentException
如果容器为空
public abstract Component getDefaultComponent(Container aContainer)
aContainer
-焦点循环根或焦点遍历策略提供的默认组件被退回
IllegalArgumentException
如果容器为空
public Component getInitialComponent(Window window)
show()
或
setVisible(true)
可见,初始组件将不会再使用。相反,如果窗口失去焦点,随后恢复,或是不可见或不可显示,随后可见和可显示,窗口的最近聚焦组件将成为焦点的主人。此方法的默认实现返回默认组件。
window
-窗口的初始组件要返回
IllegalArgumentException
如果窗口是空的
getDefaultComponent(java.awt.Container)
,
Window.getMostRecentFocusOwner()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.