0

プラグインビューの1つにリスナーを追加する必要があります。EclipseのCEditorでマウスまたはキーイベントが発生したときにビューを更新する必要があります。私はそれを次のように行いました:

((StyledText)((AbstractTextEditor)activeEditor).getAdapter(Control.class))。addKeyListener(l);

しかし、エディターで別のファイルに変更すると、リスナーが機能しません。何か案は?

4

1 に答える 1

0

解決済み:キー/マウスリスナーのアイデアを破棄し、EclipseページにSelectionListenerを追加しました。次に、選択がCEditorにある場合にのみ応答するカスタムselectionListenerを作成しました。

ビュークラスにISelectionListenerを実装させました

getViewSite().getPage().addSelectionListener(this);

@Override 

public void selectionChanged(IWorkbenchPart part, ISelection selection) {

    if(part.getClass() == CEditor.class){

        //Do what I needed 
    } 
}

これにより、CEditorでの選択の変更にのみ応答するようになりました。

于 2012-06-19T13:41:44.620 に答える