我已經做了一個eclipse RCP應用程序,一切正常,但我最近注意到菜單中的Refractor選項。我想擺脫它。我在ActionBarAdvisor.java如下:如何在eclipse rcp應用程序中刪除不需要的菜單貢獻?
@Override
protected void fillMenuBar(IMenuManager menu) {
menu.add(createFile());
menu.add(createEdit());
menu.add(createNavigate());
menu.add(createProject());
menu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
menu.add(createWindow());
menu.add(createHelp());
}
上述功能菜單添加動作爲:
edit.add(undoAct);
也undoAct被定義爲:
private IWorkbenchAction undoAction
makeActions功能有內容作爲:
@Override
protected void makeActions(IWorkbenchWindow window) {
undoAction = ActionFactory.UNDO.create(window);
undoAction.setText("Undo Menu");
register(undoAction);
}
我發現了一個建議,它說使用hideActionSets來隱藏菜單。但我無法隱藏整個菜單,只是它的操作! Remove "File, edit,...etc" menus from Eclipse RCP application
如何刪除Refractor選項? 謝謝。
menuItemID是我想隱藏的菜單的ID?什麼是activePartId和nonExistentPartId。另外我發現Refactor是通過org.eclipse.ltk.ui.refactoring添加的,並且在命令擴展中,相應類別的id是:org.eclipse.ltk.ui.category.refactoring SO是什麼內容? – Destructor
「menuItemID是我想要隱藏的菜單的ID?」是。這不一定與命令類別的ID相同,請查看「org.eclipse.ui.menus」擴展名。 activePartId是變量的名稱,它保持原樣。 nonExistentPartId是一些不存在的零件ID。您也可以將下的標籤替換爲始終爲false的任何其他表達式(例如「某些東西的計數爲-1」) –