1

我为行动创建了一个扩展点

 <menu 
            label="Folding" 
            path="add" 
            id="Plugin.Ruler.EditorMenu">  
            <separator 
                 name="group">  
             </separator>  
        </menu>

 <action 
            id="FoldingAction.Enable" 
            label="FoldingAction" 
            class="EnableClass"
            menubarPath="Plugin.Ruler.EditorMenu/group"
            style="toggle">
        </action>

当我按下右键时,我得到了菜单。

第一次菜单是 [] 并且只有在第二次才起作用的问题它导致在属性处理中出现问题。

编码 :

                  protected IMenuListener createContextMenuListener() {
    return new IMenuListener() {
        public void menuAboutToShow(IMenuManager menu) {
            String id= menu.getId();
            if (getRulerContextMenuId().equals(id)) {
                setFocus();
                rulerContextMenuAboutToShow(menu);
            } else if (getEditorContextMenuId().equals(id)) {
                setFocus();
                editorContextMenuAboutToShow(menu);
            }
        }
    };
}

           protected final void rulerContextMenuAboutToShow(final IMenuManager menu) {
              super.rulerContextMenuAboutToShow(menu);
              MenuItem[] menus = ((MenuManager) menu).getMenu().getItems();
           }

菜单项在第一次单击时为空,但在第二次单击时是否有效。

4

0 回答 0