java.lang.Object
java.awt.KeyboardFocusManager
java.awt.DefaultKeyboardFocusManager
- すべての実装されたインタフェース:
KeyEventDispatcher
,KeyEventPostProcessor
- 直系の既知のサブクラス:
FocusManager
public class DefaultKeyboardFocusManager extends KeyboardFocusManager
AWTアプリケーションのデフォルトKeyboardFocusManagerです。 フォーカス・トラバーサルはコンポーネントのフォーカス・トラバーサル・キーに対応し、コンテナのFocusTraversalPolicyを使って実行されます。
詳細は、「The Java Tutorial」の「How to Use the Focus Subsystem」および「Focus Specification」を参照してください。
-
フィールドのサマリー
クラス 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)
同じタイムスタンプとComponentを使用したenqueueKeyEvents
の呼出しのためにキューに入れられたすべてのKeyEventを、現在のフォーカス所有者への通常のディスパッチのために解放します。protected void
discardKeyEvents(Component comp)
指定されたComponent、またはそのいずれかの下位コンポーネントを使用したenqueueKeyEvents
の1回以上の呼出しのためにキューに入れられたすべてのKeyEventを破棄します。boolean
dispatchEvent(AWTEvent e)
このメソッドはAWTイベント・ディスパッチャによって呼び出され、現在のKeyboardFocusManagerがそのメソッドの代わりに指定されたイベントをディスパッチするよう要求します。boolean
dispatchKeyEvent(KeyEvent e)
ディスパッチャ・チェーン内のほかのKeyEventDispatcherがKeyEventをディスパッチしなかった場合、またはほかのKeyEventDispatchersが登録されていない場合にdispatchEvent
から呼び出されます。void
downFocusCycle(Container aContainer)
フォーカスを1つ下のフォーカス・トラバーサル・サイクルに移動します。protected void
enqueueKeyEvents(long after, Component untilFocused)
指定されたコンポーネントがフォーカス所有者となるまで、KeyEventsのディスパッチを遅らせます。void
focusNextComponent(Component aComponent)
通常FocusTraversalPolicyに基づいて、aComponentのあとでComponentをフォーカスします。void
focusPreviousComponent(Component aComponent)
通常FocusTraversalPolicyに基づいて、aComponentの前にComponentをフォーカスします。boolean
postProcessKeyEvent(KeyEvent e)
このメソッドはdispatchKeyEvent
から呼び出されます。void
processKeyEvent(Component focusedComponent, KeyEvent e)
KeyEventが指定されたfocusedComponentに対してフォーカス・トラバーサル・キーを示す場合にのみ、このメソッドはフォーカス・トラバーサル操作を初期化します。void
upFocusCycle(Component aComponent)
フォーカスを1つ上のフォーカス・トラバーサル・サイクルに移動します。クラス java.awt.KeyboardFocusManagerで宣言されたメソッド
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
-
コンストラクタの詳細
-
DefaultKeyboardFocusManager
public DefaultKeyboardFocusManager()
-
-
メソッドの詳細
-
dispatchEvent
public boolean dispatchEvent(AWTEvent e)このメソッドはAWTイベント・ディスパッチャによって呼び出され、現在のKeyboardFocusManagerがそのメソッドの代わりに指定されたイベントをディスパッチするよう要求します。 DefaultKeyboardFocusManagersはすべてのFocusEvents、フォーカス関連のすべてのWindowEvents、そしてすべてのKeyEventsをディスパッチします。 これらのイベントは、KeyboardFocusManagerがフォーカス所有者、およびフォーカス設定された有効なウィンドウをどのように認識しているかを基準にディスパッチされます。指定されたAWTEventのソースをオーバーライドすることもあります。 このメソッドがfalse
を返した場合、AWTイベント・ディスパッチャはイベント自体をディスパッチしようとします。- 定義:
dispatchEvent
、クラス:KeyboardFocusManager
- パラメータ:
e
- ディスパッチされるAWTEvent- 戻り値:
- このメソッドがイベントをディスパッチした場合は
true
、それ以外の場合はfalse
- 関連項目:
KeyboardFocusManager.redispatchEvent(java.awt.Component, java.awt.AWTEvent)
,KeyboardFocusManager.dispatchKeyEvent(java.awt.event.KeyEvent)
-
dispatchKeyEvent
public boolean dispatchKeyEvent(KeyEvent e)ディスパッチャ・チェーン内のほかのKeyEventDispatcherがKeyEventをディスパッチしなかった場合、またはほかのKeyEventDispatchersが登録されていない場合にdispatchEvent
から呼び出されます。 イベントが消費されておらず、そのターゲットが有効であり、フォーカス所有者がnullでない場合は、このメソッドがイベントをそのターゲットにディスパッチします。 このメソッドはまた、イベントをすべての登録されたKeyEventPostProcessorsにディスパッチする処理を続けて行います。 このすべての処理が終了すると、イベントがピアに渡され処理されます。DefaultKeyboardFocusManagerは、
dispatchEvent
またはAWTイベント・ディスパッチャのどちらでも、あらゆる状況でイベントに対するこれ以上のアクションを実行しないように設計されているため、常にtrue
を返します。- 定義:
dispatchKeyEvent
、インタフェース:KeyEventDispatcher
- 定義:
dispatchKeyEvent
、クラス:KeyboardFocusManager
- パラメータ:
e
- ディスパッチするKeyEvent- 戻り値:
true
- 関連項目:
Component.dispatchEvent(java.awt.AWTEvent)
-
postProcessKeyEvent
public boolean postProcessKeyEvent(KeyEvent e)このメソッドはdispatchKeyEvent
から呼び出されます。 AWTMenuShortcut
にマップされるすべての未消費KeyEventを消費し、ショートカットを有効化します。- 定義:
postProcessKeyEvent
、インタフェース:KeyEventPostProcessor
- 定義:
postProcessKeyEvent
、クラス:KeyboardFocusManager
- パラメータ:
e
- プロセス終了後のKeyEvent- 戻り値:
true
- 関連項目:
dispatchKeyEvent(java.awt.event.KeyEvent)
,MenuShortcut
-
processKeyEvent
KeyEventが指定されたfocusedComponentに対してフォーカス・トラバーサル・キーを示す場合にのみ、このメソッドはフォーカス・トラバーサル操作を初期化します。 focusedComponentが現在のフォーカスの所有者であると想定されますが、必ずしもこのとおりである必要はありません。 現在のフォーカス所有者でない場合は、フォーカス・トラバーサルの進行が、focusedComponentがフォーカス所有者の場合とは異なってきます。- 定義:
processKeyEvent
、クラス:KeyboardFocusManager
- パラメータ:
focusedComponent
- 指定されたイベントがコンポーネントのフォーカス・トラバーサル・キーを表す場合、フォーカス・トラバーサル操作の基本となるコンポーネントe
- フォーカス・トラバーサル・キーを表す可能性のあるイベント
-
enqueueKeyEvents
protected void enqueueKeyEvents(long after, Component untilFocused)指定されたコンポーネントがフォーカス所有者となるまで、KeyEventsのディスパッチを遅らせます。 指定されたタイムスタンプよりもあとのタイムスタンプを持つKeyEventは、指定されたコンポーネントがFOCUS_GAINEDイベントを受け取るまで、またはAWTが遅延要求をdequeueKeyEvents
またはdiscardKeyEvents
を呼び出して取り消すまでキューに入れられます。- 定義:
enqueueKeyEvents
、クラス:KeyboardFocusManager
- パラメータ:
after
- 現在のイベントのタイムスタンプ、または現在のイベントにタイムスタンプがない場合や、どのイベントが現在処理されているかをAWTが判定できない場合は現在のシステム時間untilFocused
- 保留状態にあるKeyEventを受け取る前にFOCUS_GAINEDイベントを受け取るComponent- 関連項目:
dequeueKeyEvents(long, java.awt.Component)
,discardKeyEvents(java.awt.Component)
-
dequeueKeyEvents
protected void dequeueKeyEvents(long after, Component untilFocused)同じタイムスタンプとComponentを使用したenqueueKeyEvents
の呼出しのためにキューに入れられたすべてのKeyEventを、現在のフォーカス所有者への通常のディスパッチのために解放します。 特定のタイムスタンプが0より小さい場合は、もっとも古いタイムスタンプを含む特定のComponentに対する未処理のエンキュー要求(存在する場合)を取り消すようにしてください。- 定義:
dequeueKeyEvents
、クラス:KeyboardFocusManager
- パラメータ:
after
-enqueueKeyEvents
の呼出しで指定されたタイムスタンプ、または0より小さい任意の値untilFocused
- 次に対する呼出しで指定されたComponent:enqueueKeyEvents
- 関連項目:
enqueueKeyEvents(long, java.awt.Component)
,discardKeyEvents(java.awt.Component)
-
discardKeyEvents
protected void discardKeyEvents(Component comp)指定されたComponent、またはそのいずれかの下位コンポーネントを使用したenqueueKeyEvents
の1回以上の呼出しのためにキューに入れられたすべてのKeyEventを破棄します。- 定義:
discardKeyEvents
、クラス:KeyboardFocusManager
- パラメータ:
comp
-enqueueKeyEvents
への1回以上の呼出しで指定されたコンポーネント、またはそのコンポーネントの親- 関連項目:
enqueueKeyEvents(long, java.awt.Component)
,dequeueKeyEvents(long, java.awt.Component)
-
focusPreviousComponent
public void focusPreviousComponent(Component aComponent)通常FocusTraversalPolicyに基づいて、aComponentの前にComponentをフォーカスします。- 定義:
focusPreviousComponent
、クラス:KeyboardFocusManager
- パラメータ:
aComponent
- フォーカス・トラバーサル操作の基準となるComponent- 関連項目:
FocusTraversalPolicy
,Component.transferFocusBackward()
-
focusNextComponent
public void focusNextComponent(Component aComponent)通常FocusTraversalPolicyに基づいて、aComponentのあとでComponentをフォーカスします。- 定義:
focusNextComponent
、クラス:KeyboardFocusManager
- パラメータ:
aComponent
- フォーカス・トラバーサル操作の基準となるComponent- 関連項目:
FocusTraversalPolicy
,Component.transferFocus()
-
upFocusCycle
public void upFocusCycle(Component aComponent)フォーカスを1つ上のフォーカス・トラバーサル・サイクルに移動します。 通常、フォーカスの所有者はaComponentのフォーカス・サイクルのルートに設定され、現在のフォーカス・サイクルのルートは新しいフォーカスの所有者のフォーカス・サイクルのルートに設定されます。 aComponentのフォーカス・サイクル・ルートがウィンドウの場合、フォーカス所有者はフォーカス・サイクル・ルートのデフォルト・フォーカス・コンポーネントに設定され、現在のフォーカス・サイクル・ルートは変更されません。- 定義:
upFocusCycle
、クラス:KeyboardFocusManager
- パラメータ:
aComponent
- フォーカス・トラバーサル操作の基準となるComponent- 関連項目:
Component.transferFocusUpCycle()
-
downFocusCycle
public void downFocusCycle(Container aContainer)フォーカスを1つ下のフォーカス・トラバーサル・サイクルに移動します。 aContainerがフォーカス・サイクル・ルートの場合、フォーカス所有者はaContainerのデフォルト・フォーカス・コンポーネントになり、現在のフォーカス・サイクル・ルートがaContainerに設定されます。 aContainerがフォーカス・サイクルのルートでない場合、フォーカス・トラバーサル操作は行われません。- 定義:
downFocusCycle
、クラス:KeyboardFocusManager
- パラメータ:
aContainer
- フォーカス・トラバーサル操作の基準となるContainer- 関連項目:
Container.transferFocusDownCycle()
-