public class DefaultKeyboardFocusManager extends KeyboardFocusManager
Please see How to Use the Focus Subsystem, a section in The Java Tutorial, and the Focus Specification for more information.
BACKWARD_TRAVERSAL_KEYS, DOWN_CYCLE_TRAVERSAL_KEYS, FORWARD_TRAVERSAL_KEYS, UP_CYCLE_TRAVERSAL_KEYS
Constructor and Description |
---|
DefaultKeyboardFocusManager() |
Modifier and Type | Method and Description |
---|---|
protected void |
dequeueKeyEvents(long after,
Component untilFocused)
Releases for normal dispatching to the current focus owner all
KeyEvents which were enqueued because of a call to
enqueueKeyEvents with the same timestamp and Component. |
protected void |
discardKeyEvents(Component comp)
Discards all KeyEvents which were enqueued because of one or more calls
to
enqueueKeyEvents with the specified Component, or one of
its descendants. |
boolean |
dispatchEvent(AWTEvent e)
This method is called by the AWT event dispatcher requesting that the
current KeyboardFocusManager dispatch the specified event on its behalf.
|
boolean |
dispatchKeyEvent(KeyEvent e)
Called by
dispatchEvent if no other
KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or
if no other KeyEventDispatchers are registered. |
void |
downFocusCycle(Container aContainer)
Moves the focus down one focus traversal cycle.
|
protected void |
enqueueKeyEvents(long after,
Component untilFocused)
Delays dispatching of KeyEvents until the specified Component becomes
the focus owner.
|
void |
focusNextComponent(Component aComponent)
Focuses the Component after aComponent, typically based on a
FocusTraversalPolicy.
|
void |
focusPreviousComponent(Component aComponent)
Focuses the Component before aComponent, typically based on a
FocusTraversalPolicy.
|
boolean |
postProcessKeyEvent(KeyEvent e)
This method will be called by
dispatchKeyEvent . |
void |
processKeyEvent(Component focusedComponent,
KeyEvent e)
This method initiates a focus traversal operation if and only if the
KeyEvent represents a focus traversal key for the specified
focusedComponent.
|
void |
upFocusCycle(Component aComponent)
Moves the focus up one focus traversal cycle.
|
addKeyEventDispatcher, addKeyEventPostProcessor, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, clearFocusOwner, clearGlobalFocusOwner, downFocusCycle, firePropertyChange, fireVetoableChange, focusNextComponent, focusPreviousComponent, getActiveWindow, getCurrentFocusCycleRoot, getCurrentKeyboardFocusManager, getDefaultFocusTraversalKeys, getDefaultFocusTraversalPolicy, getFocusedWindow, getFocusOwner, getGlobalActiveWindow, getGlobalCurrentFocusCycleRoot, getGlobalFocusedWindow, getGlobalFocusOwner, getGlobalPermanentFocusOwner, getKeyEventDispatchers, getKeyEventPostProcessors, getPermanentFocusOwner, getPropertyChangeListeners, getPropertyChangeListeners, getVetoableChangeListeners, getVetoableChangeListeners, redispatchEvent, removeKeyEventDispatcher, removeKeyEventPostProcessor, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener, setCurrentKeyboardFocusManager, setDefaultFocusTraversalKeys, setDefaultFocusTraversalPolicy, setGlobalActiveWindow, setGlobalCurrentFocusCycleRoot, setGlobalFocusedWindow, setGlobalFocusOwner, setGlobalPermanentFocusOwner, upFocusCycle
public boolean dispatchEvent(AWTEvent e)
false
, then the AWT event
dispatcher will attempt to dispatch the event itself.dispatchEvent
in class KeyboardFocusManager
e
- the AWTEvent to be dispatchedtrue
if this method dispatched the event;
false
otherwiseKeyboardFocusManager.redispatchEvent(java.awt.Component, java.awt.AWTEvent)
,
KeyboardFocusManager.dispatchKeyEvent(java.awt.event.KeyEvent)
public boolean dispatchKeyEvent(KeyEvent e)
dispatchEvent
if no other
KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or
if no other KeyEventDispatchers are registered. If the event has not
been consumed, its target is enabled, and the focus owner is not null,
this method dispatches the event to its target. This method will also
subsequently dispatch the event to all registered
KeyEventPostProcessors. After all this operations are finished,
the event is passed to peers for processing.
In all cases, this method returns true
, since
DefaultKeyboardFocusManager is designed so that neither
dispatchEvent
, nor the AWT event dispatcher, should take
further action on the event in any situation.
dispatchKeyEvent
in interface KeyEventDispatcher
dispatchKeyEvent
in class KeyboardFocusManager
e
- the KeyEvent to be dispatchedtrue
Component.dispatchEvent(java.awt.AWTEvent)
public boolean postProcessKeyEvent(KeyEvent e)
dispatchKeyEvent
. It will
handle any unconsumed KeyEvents that map to an AWT
MenuShortcut
by consuming the event and activating the
shortcut.postProcessKeyEvent
in interface KeyEventPostProcessor
postProcessKeyEvent
in class KeyboardFocusManager
e
- the KeyEvent to post-processtrue
dispatchKeyEvent(java.awt.event.KeyEvent)
,
MenuShortcut
public void processKeyEvent(Component focusedComponent, KeyEvent e)
processKeyEvent
in class KeyboardFocusManager
focusedComponent
- the Component that is the basis for a focus
traversal operation if the specified event represents a focus
traversal key for the Componente
- the event that may represent a focus traversal keyprotected void enqueueKeyEvents(long after, Component untilFocused)
dequeueKeyEvents
or discardKeyEvents
.enqueueKeyEvents
in class KeyboardFocusManager
after
- timestamp of current event, or the current, system time if
the current event has no timestamp, or the AWT cannot determine
which event is currently being handleduntilFocused
- Component which will receive a FOCUS_GAINED event
before any pending KeyEventsdequeueKeyEvents(long, java.awt.Component)
,
discardKeyEvents(java.awt.Component)
protected void dequeueKeyEvents(long after, Component untilFocused)
enqueueKeyEvents
with the same timestamp and Component.
If the given timestamp is less than zero, the outstanding enqueue
request for the given Component with the oldest timestamp (if
any) should be cancelled.dequeueKeyEvents
in class KeyboardFocusManager
after
- the timestamp specified in the call to
enqueueKeyEvents
, or any value < 0untilFocused
- the Component specified in the call to
enqueueKeyEvents
enqueueKeyEvents(long, java.awt.Component)
,
discardKeyEvents(java.awt.Component)
protected void discardKeyEvents(Component comp)
enqueueKeyEvents
with the specified Component, or one of
its descendants.discardKeyEvents
in class KeyboardFocusManager
comp
- the Component specified in one or more calls to
enqueueKeyEvents
, or a parent of such a ComponentenqueueKeyEvents(long, java.awt.Component)
,
dequeueKeyEvents(long, java.awt.Component)
public void focusPreviousComponent(Component aComponent)
focusPreviousComponent
in class KeyboardFocusManager
aComponent
- the Component that is the basis for the focus
traversal operationFocusTraversalPolicy
,
Component.transferFocusBackward()
public void focusNextComponent(Component aComponent)
focusNextComponent
in class KeyboardFocusManager
aComponent
- the Component that is the basis for the focus
traversal operationFocusTraversalPolicy
,
Component.transferFocus()
public void upFocusCycle(Component aComponent)
upFocusCycle
in class KeyboardFocusManager
aComponent
- the Component that is the basis for the focus
traversal operationComponent.transferFocusUpCycle()
public void downFocusCycle(Container aContainer)
downFocusCycle
in class KeyboardFocusManager
aContainer
- the Container that is the basis for the focus
traversal operationContainer.transferFocusDownCycle()
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, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.