0

質問があります。私は動的なメニューの貢献をしています(クラスを拡張するContributionItem)。しかし、これらのアイテムをキーバインディングで接続する方法が見つかりません。

主な問題は、プラグインが実際には非常に簡単であるということです。XMLファイルからメニューをロードします。動的メニューに関するチュートリアルがほとんどないため、実際にはそれは恐ろしいことです。ほとんどすべてのチュートリアルでplugin.xml。しかし、私はそれをこのように行うことはできません。選択したワークスペースに応じて、XMLファイルからアイテムをロードする必要があります。このファイルには、キーバインドを含むメニュー構造が含まれています。それが私の問題です。キーをコマンドに動的にバインドする方法を見つけたことがありません。

4

1 に答える 1

0

幸い、メニュー項目にはメソッドがあり、このタスクを実行するために使用できます。

MenuItem menuItem = new MenuItem(menu, SWT.CHECK, index);
menuItem.setAccelerator(SWT.SHIFT | SWT.ALT | 'G');

それにもかかわらず、現在のEclipseインスタンスですでに使用されているキーバインディングのリストを取得することはそれほど簡単ではありません。ほとんどの場合、プラグインとそのメニューの貢献のリストを調べて、それらを検出する必要があります。

于 2012-04-11T06:10:21.297 に答える