以编程方式触发 Eclipse 插件菜单项?
Trigger Eclipse plugin menu-entry programmatically?
我有这个问题:我的 Eclipse 插件中有一个菜单项。它有一个扩展 AbstractHandler
并覆盖 execute()
的处理程序,后者采用 ExecutionEvent
参数。
现在我要做的是在特定事件发生时触发这个函数。有人可以告诉我怎么做吗?
我想我必须以某种方式自己创建一个 ExecutionEvent
?
您可以使用IHandlerService
来执行处理程序处理的命令,它将调用您的处理程序:
IHandlerService handlerService = PlatformUI.getWorkbench().getService(IHandlerService.class);
handlerService.executeCommand("command id", event);
如果您需要传递命令参数,executeCommand
还有另一种变体,它采用 ParameterizedCommand
。
我有这个问题:我的 Eclipse 插件中有一个菜单项。它有一个扩展 AbstractHandler
并覆盖 execute()
的处理程序,后者采用 ExecutionEvent
参数。
现在我要做的是在特定事件发生时触发这个函数。有人可以告诉我怎么做吗?
我想我必须以某种方式自己创建一个 ExecutionEvent
?
您可以使用IHandlerService
来执行处理程序处理的命令,它将调用您的处理程序:
IHandlerService handlerService = PlatformUI.getWorkbench().getService(IHandlerService.class);
handlerService.executeCommand("command id", event);
如果您需要传递命令参数,executeCommand
还有另一种变体,它采用 ParameterizedCommand
。