public interface KeyEventDispatcher
KeyboardFocusManager 自体が KeyEventDispatcher を実装します。デフォルトで、現在の KeyboardFocusManager は、登録された KeyEventDispatchers によりディスパッチされないすべての KeyEvents のシンクになります。現在の KeyboardFocusManager は KeyEventDispatcher としての登録を完全に解除することはできません。ただし、KeyEventDispatcher が実際にディスパッチしたかどうかにかかわらず KeyEvent をディスパッチしたことを報告する場合は、KeyboardFocusManager は KeyEvent に関してそれ以上の処理は行いません(クライアントコードは、現在の KeyboardFocusManager を KeyEventDispatcher として 1 回以上登録することは可能ですが、通常これは不要であり、お勧めできません)。
修飾子と型 | メソッドと説明 |
---|---|
boolean |
dispatchKeyEvent(KeyEvent e)
このメソッドは、現在の KeyboardFocusManager によって呼び出され、この KeyEventDispatcher がそのメソッドの代わりに指定されたイベントをディスパッチするよう要求します。
|
boolean dispatchKeyEvent(KeyEvent e)
redispatchEvent
を使用して、現在の KeyboardFocusManager がこの KeyEventDispatcher に再度イベントのディスパッチを再帰的に要求することを防ぐ必要があります。
このメソッドの実装が false
を返す場合、KeyEvent はチェーンの次の KeyEventDispatcher に渡され、現在の KeyboardFocusManager で終了します。 実装が true
を返す場合、KeyEvent はディスパッチされたものと見なされ (実際にディスパッチされる必要はない)、現在の KeyboardFocusManager は KeyEvent に関してこれ以上の処理を行いません。 このような場合、KeyboardFocusManager.dispatchEvent
は同様に true
を返します。 実装が KeyEvent を消費するにもかかわらず false
を返す場合、消費されたイベントはなおチェーンの次の KeyEventDispatcher に渡されます。開発者は KeyEvent がターゲットにディスパッチされる前に消費されているかどうかをチェックすることが重要です。デフォルトでは、現在の KeyboardFocusManager は消費された KeyEvent をディスパッチすることはありません。
e
- ディスパッチする KeyEventtrue
、そうでない場合は false
KeyboardFocusManager.redispatchEvent(java.awt.Component, java.awt.AWTEvent)
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.