此文章中的代码片段均需要放置在类“ApplicationWorkbenchWindowAdvisor”的方法“postWindowOpen”中。
1. rcp eclipse隐藏菜单项search
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
page.hideActionSet("org.eclipse.search.searchActionSet");
2. 上述操作后,search菜单项下,其他的子菜单项均已隐藏,但Quick Search子菜单项仍然存在,需要使用如下代码隐藏Quick Search菜单项。
隐藏Quick Search菜单项有两种方式。
① 隐藏对应actionSet:
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
page.hideActionSet("org.eclipse.text.quicksearch.actionSet");
② 删除对应item:
WorkbenchWindow window = (WorkbenchWindow)PlatformUI.getWorkbench().getActiveWorkbenchWindow();
MenuManager manager = (MenuManager) window.getMenuBarManager();
IContributionItem[] contributionItems = manager.getItems();
for(IContributionItem item : contributionItems) {
if ("org.eclipse.search.menu".equals(item.getId())) {
manager.remove(item);
}
}
manager.update(true);