JavaTM Platform
Standard Ed. 6

java.awt
インタフェース KeyEventPostProcessor

既知の実装クラスの一覧:
DefaultFocusManager, DefaultKeyboardFocusManager, FocusManager, KeyboardFocusManager

public interface KeyEventPostProcessor

KeyEventPostProcessor は、未消費のすべての KeyEvents の最終変換に関して現在の KeyboardFocusManager と協力します。現在の KeyboardFocusManager によって登録された KeyEventPostProcessors は、KeyEvents がターゲットにディスパッチされ処理されたあとで KeyEvents を受け取ります。そうでない場合は、アプリケーションの Component が現在フォーカスを所有していないために破棄される KeyEvents も登録された KeyEventPostProcessors に転送されます。これにより、アプリケーションはメニューショートカットなどグローバル KeyEvent の事後処理を要求する機能を実装できるようになります。  

KeyboardFocusManager 自体が KeyEventPostProcessor を実装することに注意してください。デフォルトで、現在の KeyboardFocusManager がチェーンの最終 KeyEventPostProcessor になります。現在の KeyboardFocusManager は KeyEventPostProcessor としての登録を完全に解除することはできません。ただし、KeyEventPostProcessor がこれ以上 KeyEvent の事後処理が行われないことを報告する場合は、AWT はイベントが完全に処理されたものと見なし、イベントに関する追加の処理は何も行われません (クライアントコードは、現在の KeyboardFocusManager を KeyEventPostProcessor として 1 回以上登録できますが、これは通常不要であり、お勧めできません)。

導入されたバージョン:
1.4
関連項目:
KeyboardFocusManager.addKeyEventPostProcessor(java.awt.KeyEventPostProcessor), KeyboardFocusManager.removeKeyEventPostProcessor(java.awt.KeyEventPostProcessor)

メソッドの概要
 boolean postProcessKeyEvent(KeyEvent e)
          このメソッドは、現在の KeyboardFocusManager によって呼び出され、この KeyEventPostProcessor が KeyEvent の最終変換の一部として必要な事後処理を実行するよう要求します。
 

メソッドの詳細

postProcessKeyEvent

boolean postProcessKeyEvent(KeyEvent e)
このメソッドは、現在の KeyboardFocusManager によって呼び出され、この KeyEventPostProcessor が KeyEvent の最終変換の一部として必要な事後処理を実行するよう要求します。このメソッドが呼び出されたときは、通常 KeyEvent はすでにターゲットにディスパッチされ、処理されています。ただし、アプリケーションの Component が現在フォーカスを所有していない場合、KeyEvent は Component にディスパッチされることはありません。通常、KeyEvent の事後処理はメニューショートカットなどのグローバルな KeyEvent の事後処理を要求する機能の実装に使用されます。KeyEventPostProcessor が KeyEvent をディスパッチしようとする場合、redispatchEvent を使用して AWT に対してこの KeyEventPostProcessor が再度イベントの事後処理を再帰的に要求しないようにしてください。  

このメソッドの実装が false を返す場合、KeyEvent はチェーンの次の KeyEventPostProcessor に渡され、現在の KeyboardFocusManager で終了します。実装が true を返す場合、KeyEvent は完全に処理されたものと見なされ (実際に処理される必要はない)、AWT は KeyEvent に関してこれ以上の処理は行いません。実装が KeyEvent を消費するにもかかわらず false を返す場合でも、消費されたイベントはなおチェーンの次の KeyEventPostProcessor に渡されます。開発者は KeyEvent の事後処理を実行する前に KeyEvent が消費されているかどうかをチェックすることが重要です。デフォルトで、現在の KeyboardFocusManager は消費された KeyEvent に応答する事後処理は何も実行しません。

パラメータ:
e - プロセス終了後の KeyEvent
戻り値:
AWT が KeyEvent に関してこれ以上の処理を行わない場合は true、 そうでない場合は false
関連項目:
KeyboardFocusManager.redispatchEvent(java.awt.Component, java.awt.AWTEvent)

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。