2

EclipseJunoのコンテキストメニューに問題があります。クラスを拡張するContributionItemクラスがあります。これにより、メニュー項目が作成されます。各メニュー項目にはインデックスがあります。しかし、どの値にインデックスを含める必要があり、どのように動作する必要があるのか​​はわかりません。その位置にアイテムを挿入する必要があると思います。例:貢献URIがあります:

popup:org.eclipse.jdt.ui.PackageExplorer?before=common.new.menu

次に、が最初の項目fill(Menu menu, int index)であるため、インデックスとして0を使用して呼び出されたメソッドです。common.new.menuただし、常に新しいメニュー項目(ポップアップメニューの最初の項目)が消え、2回目に右クリックすると、ポップアップメニューが縮小され、区切り文字といくつかの項目(私の項目を含む)のみが含まれます。 。私は完全に迷子になっています...

注:リソースがクリックされると、fill()メソッドは常に2回呼び出されます。

4

1 に答える 1

2

ヒューレカ!長い間グーグルで見つけました。ある議論の中で、クラスisDynamic()で定義されたメソッドをオーバーライドすることも重要であると誰かが指摘しました。ContributionItemデフォルトの実装は常にfalseを返します。インディゴでは通常それは問題ではありませんが、ジュノは少し厳しいです。メソッドをオーバーライドしてisDynamic()常にtrueを返すようにするには、独自のコントリビューションアイテムが必要です。

于 2013-02-26T08:17:43.997 に答える