【问题标题】:RCP - How to use existing command for a button inside a panel?RCP - 如何将现有命令用于面板内的按钮?
【发布时间】:2016-03-16 22:30:21
【问题描述】:

我对 RCP 有疑问。

如何将现有的命令功能用于面板内的按钮?

例如,采用 Edit->Cut 功能。我有一个面板,里面有一个按钮,对于这个按钮,我需要使用相同的 Edit->Cut 功能。

【问题讨论】:

  • 您需要提供更多详细信息。这个面板在哪里?是在编辑器中吗?
  • 不……我已经创建了一个自定义菜单……考虑像 File->CutomNew。如果单击该菜单,它将打开一个对话框..里面会有一个按钮..如果单击该按钮..它应该触发剪切动作..
  • 剪什么?如果从对话框中调用“编辑 > 剪切”,我认为它不会起作用。

标签: java plugins eclipse-plugin eclipse-rcp rcp


【解决方案1】:

在 RCP 3 中,您可以这样做:

IServiceLocator serviceLocator = PlatformUI.getWorkbench();

ICommandService commandService = (ICommandService) serviceLocator.getService(ICommandService.class);

try  { 
    Command command = commandService.getCommand("de.xx.mycommand");

    command.executeWithChecks(new ExecutionEvent());

} catch (ExecutionException | NotDefinedException |
        NotEnabledException | NotHandledException e) {
    e.printStackTrace();
}

在 RCP 4 中,您可以使用 ICommandService

这里有描述:

http://wiki.eclipse.org/E4/Snippets#Execute_Command.2FHandler_manually

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-28
    • 2019-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-26
    • 1970-01-01
    相关资源
    最近更新 更多