0

次のコード/私の仮定の何が問題になっていますか?

まず、AWT イベント リスナーを登録します。

...
Toolkit.getDefaultToolkit().addAWTEventListener(this,
    AWTEvent.ACTION_EVENT_MASK | AWTEvent.ITEM_EVENT_MASK
    );
...

次に、ユーザーがまたはeventDispatched(AWTEvent)からアイテムを選択するたびに呼び出されることを期待しています。しかし、何も起こりません。なんで?JComboBoxJList

@Override
public void eventDispatched(AWTEvent event) {
    if (event instanceof ItemEvent) {
        System.out.println("ITEM EVENT");   // this is never called
    } else if (event instanceof ActionEvent) {
        System.out.println("ACTION EVENT"); // this is never called
    }
}

と に追加できることはわかっていますが、ユーザー アクティビティをログに記録しよActionListenerJComboBoxJListしているため、このソリューションは避けたいため、リスナーは「グローバル」である必要があります。

4

1 に答える 1

0

私が求めている機能がサポートされていない可能性があることがわかりました: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6292132

関連記事: グローバル アクション イベント リスナーを追加するには?

于 2012-12-04T11:30:00.460 に答える