2010-03-18 2 views
2

У меня есть одна перспектива и одна точка зрения. Отображение отображается, как только открывается программа. Viewpart должен быть единственным и должен быть закрыт.Как снова открыть окно просмотра из меню?

У меня есть две проблемы с этим поведением:

  1. Я хочу, чтобы перспектива быть показан пустой, только фоновое изображение должно быть показано на рисунке. (Как мне это сделать?)
  2. Я хочу открыть меню из меню, используя меню стиля команды .

До сих пор я могу закрыть свою точку зрения, и перспектива пуста.

но

Я не могу назвать это из меню с моей selfdefined командой. код подобен

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; 
    } 
} 

Что я делаю не так? Спасибо!

+0

Это абсолютно возможно, я сделал это, но не помню специфику, долгое время назад. Это было что-то вроде show() и setfocus(). Однако в моем случае представление было также настроено в файле plugin.xml. Просто прокомментировал, чтобы сказать вам, что это возможно. – questzen

ответ

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;  
    }  
}