0

SWT で書かれた Eclipse プラグイン プロジェクトがあります。SWT.ARROW_LEFTキーとをリッスンするグローバル リスナーを追加しましたSWT.ARROW_RIGHT。これはDisplay.getDefault().addFilter()メソッドによって行われます。ほとんどの場合、これで問題なく動作します。しかし、パネルにボタンのセットがあり、ボタンにフォーカスがある場合、キーSWT.ARROW_LEFTSWT.ARROW_RIGHTキーを押しても適切なイベントがトリガーされず、キーのセット間を移動するだけです。この問題を克服する方法を知っている人はいますか? ありがとう。

Display.getDefault().addFilter(SWT.ALL, new Listener() {
            @Override
            public void handleEvent(Event event) {
                if ((event.keyCode == SWT.ARROW_LEFT) || (event.keyCode == SWT.ARROW_RIGHT)) {
      }
   }
});
4

1 に答える 1

0

TransverseEvent を使用して doit フィールドを false に設定することで問題が解決しました。

于 2013-03-28T13:50:30.733 に答える