2011-01-15 11 views
2

アプリケーション/ JVMは実装されたキー処理インタフェースがどのクラスを認識しますか?それはjava Reflectionsを使用していますか、それともメソッドのすべてのクラスをチェックしていますか?Javaキーイベント処理メカニズム(KeyListeners通知)はどのように機能しますか?

アプリケーションまたは実行中のJVMの理解により、ユーザーイベントを配信したり、キーリストインターフェイスを実装したクラスの特定のメソッドを呼び出す方法を説明します。それらのメソッドが実装されている場合、またはどのクラスがキーリスタのインターフェイスを実装したクラスであるかをどのように知っていますか?

クラスのkeylistenerインターフェイスを実装していないが、引き続きすべてのメソッドを実装している場合。クラスはまだ発生したユーザーイベントを処理しますか?

答えて

1

イベントをプロデュースするイベントプロデューサ(たとえばボタン)にリスナーを追加する必要があります。イベント発生後、プロデューサはループ内のすべての登録済みリスナーを呼び出し、イベントオブジェクトをparamとして渡します。

3

ブラックベリーアプリケーションの画面に対して特定の種類のイベントを処理する場合は、特定のイベントインターフェイスを実装するクラスを作成して画面に登録する必要があります。

たとえば、キーイベントを処理する場合は、KeyListenerインターフェイスを実装するクラスを作成し、KeyListenerを画面に登録する必要があります。

リンクにサンプルコードがあります。

注:あなたは、Screenクラスがインタフェース

ちょうどあなたのMainScreenクラスのメソッドを作成しますが、動作しませんインターフェイスを実装するか、それを登録しないを実装したのではなく、内部クラスまたは匿名クラスを作成することができます。

関連する問題