|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.KeyboardFocusManager java.awt.DefaultKeyboardFocusManager
public class DefaultKeyboardFocusManager
AWT 应用程序的默认 KeyboardFocusManager。通过进行焦点遍历来响应 Component 的焦点遍历键,并使用 Container 的 FocusTraversalPolicy。
有关更多信息,请参阅 The Java Tutorial 中的 How to Use the Focus Subsystem 一节以及 Focus Specification。
FocusTraversalPolicy
,
Component.setFocusTraversalKeys(int, java.util.Set extends java.awt.AWTKeyStroke>)
,
Component.getFocusTraversalKeys(int)
字段摘要 |
---|
从类 java.awt.KeyboardFocusManager 继承的字段 |
---|
BACKWARD_TRAVERSAL_KEYS, DOWN_CYCLE_TRAVERSAL_KEYS, FORWARD_TRAVERSAL_KEYS, UP_CYCLE_TRAVERSAL_KEYS |
构造方法摘要 | |
---|---|
DefaultKeyboardFocusManager()
|
方法摘要 | |
---|---|
protected void |
dequeueKeyEvents(long after,
Component untilFocused)
释放正常指派到当前焦点所有者的所有 KeyEvent,这些 KeyEvent 因为调用了具有相同时间戳和 Component 的 enqueueKeyEvents 而被加入队列。 |
protected void |
discardKeyEvents(Component comp)
放弃因为一次或多次调用具有指定 Component 或其子代之一的 enqueueKeyEvents 而加入队列的所有 KeyEvent。 |
boolean |
dispatchEvent(AWTEvent e)
此方法由 AWT 事件调度程序调用,该调度程序请求当前的 KeyboardFocusManager 以它的名义指派指定的事件。 |
boolean |
dispatchKeyEvent(KeyEvent e)
如果调度程序链中其他 KeyEventDispatcher 都没有调度 KeyEvent,或者没有注册其他 KeyEventDispatcher,则由 dispatchEvent 调用此方法。 |
void |
downFocusCycle(Container aContainer)
将焦点下移一个焦点遍历循环。 |
protected void |
enqueueKeyEvents(long after,
Component untilFocused)
延迟对 KeyEvent 的指派,直到指定的 Component 成为焦点所有者。 |
void |
focusNextComponent(Component aComponent)
使 aComponent 后面的 Component 拥有焦点,通常基于 FocusTraversalPolicy。 |
void |
focusPreviousComponent(Component aComponent)
使 aComponent 前面的 Component 拥有焦点,通常基于 FocusTraversalPolicy。 |
boolean |
postProcessKeyEvent(KeyEvent e)
由 dispatchKeyEvent 调用此方法。 |
void |
processKeyEvent(Component focusedComponent,
KeyEvent e)
当且仅当该 KeyEvent 表示指定 focusedComponent 的焦点遍历键时,此方法才会启动一个焦点遍历操作。 |
void |
upFocusCycle(Component aComponent)
将焦点上移一个焦点遍历循环。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public DefaultKeyboardFocusManager()
方法详细信息 |
---|
public boolean dispatchEvent(AWTEvent e)
false
,则 AWT 事件调度程序会试着指派事件本身。
KeyboardFocusManager
中的 dispatchEvent
e
- 要指派的 AWTEvent
true
;否则返回 false
KeyboardFocusManager.redispatchEvent(java.awt.Component, java.awt.AWTEvent)
,
KeyboardFocusManager.dispatchKeyEvent(java.awt.event.KeyEvent)
public boolean dispatchKeyEvent(KeyEvent e)
dispatchEvent
调用此方法。如果没有使用该事件,而是启用了它的目标,且焦点所有者不为 null,则此方法会将该事件指派到它的目标。此方法随后会将该事件指派到所有已注册的 KeyEventPostProcessor。完成所有这些操作之后,会将该事件传递给 KeyEventPostProcessor 的同位体进行处理。
在所有情况下,此方法都将返回 true
,这是因为设计了 DefaultKeyboardFocusManager,因此,在任何情况下,dispatchEvent
和 AWT 事件调度程序都不应该对该事件执行进一步的操作。
KeyEventDispatcher
中的 dispatchKeyEvent
KeyboardFocusManager
中的 dispatchKeyEvent
e
- 要指派的 KeyEvent
true
Component.dispatchEvent(java.awt.AWTEvent)
public boolean postProcessKeyEvent(KeyEvent e)
dispatchKeyEvent
调用此方法。它将处理所有未使用的、映射到 AWT MenuShortcut
的 KeyEvent,这是通过使用该事件并激活快捷方式来实现的。
KeyEventPostProcessor
中的 postProcessKeyEvent
KeyboardFocusManager
中的 postProcessKeyEvent
e
- 要进行后处理的 KeyEvent
true
dispatchKeyEvent(java.awt.event.KeyEvent)
,
MenuShortcut
public void processKeyEvent(Component focusedComponent, KeyEvent e)
KeyboardFocusManager
中的 processKeyEvent
focusedComponent
- 作为焦点遍历操作的基础的 Component,如果指定事件表示 Component 的焦点遍历键,则执行焦点遍历操作e
- 可以表示焦点遍历键的事件protected void enqueueKeyEvents(long after, Component untilFocused)
dequeueKeyEvents
或 discardKeyEvents
取消延迟请求。
KeyboardFocusManager
中的 enqueueKeyEvents
after
- 当前事件的时间戳,如果当前事件没有时间戳,或 AWT 无法确定当前正在处理哪个事件,则此参数为当前系统时间untilFocused
- 将接收任何挂起 KeyEvent 之前的 FOCUS_GAINED 事件的 ComponentdequeueKeyEvents(long, java.awt.Component)
,
discardKeyEvents(java.awt.Component)
protected void dequeueKeyEvents(long after, Component untilFocused)
enqueueKeyEvents
而被加入队列。如果给定的时间戳小于零,那么对于具有最早的时间戳(如果有)的给定 Component,应该取消未完成的入队请求。
KeyboardFocusManager
中的 dequeueKeyEvents
after
- 调用 enqueueKeyEvents
期间指定的时间戳,或为小于零的任意值untilFocused
- 调用 enqueueKeyEvents
期间指定的 ComponentenqueueKeyEvents(long, java.awt.Component)
,
discardKeyEvents(java.awt.Component)
protected void discardKeyEvents(Component comp)
enqueueKeyEvents
而加入队列的所有 KeyEvent。
KeyboardFocusManager
中的 discardKeyEvents
comp
- 一次或多次调用 enqueueKeyEvents
期间指定的 Component,或这样一个 Component 的父组件enqueueKeyEvents(long, java.awt.Component)
,
dequeueKeyEvents(long, java.awt.Component)
public void focusPreviousComponent(Component aComponent)
KeyboardFocusManager
中的 focusPreviousComponent
aComponent
- 作为焦点遍历操作的基础的 ComponentFocusTraversalPolicy
,
Component.transferFocusBackward()
public void focusNextComponent(Component aComponent)
KeyboardFocusManager
中的 focusNextComponent
aComponent
- 作为焦点遍历操作的基础的 ComponentFocusTraversalPolicy
,
Component.transferFocus()
public void upFocusCycle(Component aComponent)
KeyboardFocusManager
中的 upFocusCycle
aComponent
- 作为焦点遍历操作的基础的 ComponentComponent.transferFocusUpCycle()
public void downFocusCycle(Container aContainer)
KeyboardFocusManager
中的 downFocusCycle
aContainer
- 作为焦点遍历操作的基础的 ComponentContainer.transferFocusDownCycle()
|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。