我一直在試圖弄清楚現在如何從正在開發的插件中調用Eclipse菜單項。說,爲了這篇文章,我想調用右鍵菜單中的eclipse「格式」菜單項來格式化一個源文件,我將如何通過調用該項目來完成此操作(即,不只是模仿該菜單項的效果,實際上調用它)?使用Eclipse JDT以編程方式調用菜單項目,插件開發
我不是在尋找如何格式化代碼,只是調用菜單項的想法。
我傾向於在IWorkbench,Shell,ToolBar,ToolItem等API信息,但我不知道。我一直無法在API或其他在線任何地方找到關於此主題的任何信息。有沒有更好的方法來做到這一點,而不是編程?
的Eclipse JDT - http://help.eclipse.org/indigo/index.jsp?nav=%2F3
編輯:
String commandId = "org.eclipse.jdt.ui.edit.text.java.format";
IHandlerService handlerService = (IHandlerService)(IHandlerService) PlatformUI.getWorkbench().getService(IHandlerService.class);
handlerService.executeCommand(commandId, null);
這麼簡單。最難的部分是找到commandId,可以很容易地搜索,就像rlegendi提到的那樣。這正是我想要的。它通過ID訪問該插件,然後執行它。簡單而有效。感謝大家!
「有更好的方法嗎」是的,根本不要這樣做! GUI元素不應該以編程方式觸發。相反,觸發底層功能。 –
我想,但我該如何去尋找這個功能?有大量的功能提供,但我不知道如何訪問該信息。我不認爲我需要重新編寫經過嘗試,真實且清晰可用的代碼。 – HJM
我知道,這不是你的錯。 Eclipse充滿了可怕的緊密耦合的代碼。希望其中一些在E4中會更好 –