【问题标题】:How to reopen a viewpart from menu?如何从菜单中重新打开视图部分?
【发布时间】:2011-01-29 04:53:04
【问题描述】:

我有一个视角和一个视图部分。程序打开后立即显示视图部分。 viewpart 应该是唯一的并且应该是可关闭的。

我对这种行为有两个问题:

  1. 我希望视角是 显示为空,只是一个背景图像 应该显示。 (我该怎么做?)
  2. 我想打开 菜单中的视图部分,使用 命令样式菜单。

到目前为止,我可以关闭我的 viewpart 并且视角是空的。

但是

我无法使用自定义命令从菜单中调用它。 代码是这样的

public class CallMyViewPart extends AbstractHandler implements IHandler {

    @Override
    public Object execute(ExecutionEvent event) throws ExecutionException {
        Shell shell = HandlerUtil.getActiveWorkbenchWindow(event).getShell();
        IWorkbenchPage page = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage();

        MyViewPart myViewPart = new MyViewPart();

    return null;
    }
}

我做错了什么? 谢谢!

【问题讨论】:

  • 绝对有可能,我做过,但不记得具体细节,很久以前了。它类似于 show() 和 setfocus()。但是,在我的情况下,视图也是在 plugin.xml 中配置的。刚刚评论告诉你这是可能的。

标签: java eclipse eclipse-rcp rcp


【解决方案1】:

嗯,比我想象的要容易。

public class CallMyViewPart extends AbstractHandler implements IHandler {      

    @Override      
    public Object execute(ExecutionEvent event) throws ExecutionException {      
        Shell shell = HandlerUtil.getActiveWorkbenchWindow(event).getShell();      
        IWorkbenchPage page = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage();
        try {
        page.showView("somedomain.mainViewpart");
    } catch (PartInitException e) {
        e.printStackTrace();
    }

    return null;      
    }      
} 

【讨论】:

    猜你喜欢
    • 2013-02-14
    • 1970-01-01
    • 1970-01-01
    • 2012-05-05
    • 1970-01-01
    • 2019-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多