2014-10-31 31 views
0

我創建了一個ToolItem「另存爲」像上面的圖像,但它不顯示在工具欄的位置。因此,如何建立內部ViewPart時工具欄(不使用的plugin.xml)如何創建一個工具欄裏面的viewpart(不使用plugin.xml)

IMAGE EXAMPLE

這是我的代碼創建工具欄:

public void createToolbar(Composite parent) { 
     // Create composite Toolbar and set layout 
     toolBarComposite = new Composite(parent, SWT.NONE); 
     gridLayout = new GridLayout(1, false); 
     toolBarComposite.setLayout(gridLayout); 

     gridData = new GridData(SWT.RIGHT, SWT.NONE, true, false); 
     toolBarComposite.setLayoutData(gridData); 

     // Create Toolbar 
     gridData = new GridData(SWT.RIGHT, SWT.NONE, true, false); 
     toolBar = new ToolBar(toolBarComposite, SWT.FLAT); 
     toolBar.setLayoutData(gridData); 

     // Create Item 
     item = new ToolItem(toolBar, SWT.PUSH); 
     item.setImage(SAVE_IMAGE); 
     item.setToolTipText("Save (Ctrl + S)"); 
     item.setEnabled(true); 
     item.addSelectionListener(new SelectionAdapter() { 
      private static final long serialVersionUID = -102212312093090431L; 

      @Override 
      public void widgetSelected(SelectionEvent e) { 
      } 

      @Override 
      public void widgetDefaultSelected(SelectionEvent e) { 
      } 
     }); 
    } 

感謝你提前!

回答

1

您將不得不在觀看網站的操作欄上使用貢獻。

// Copy-pasted from an existing project, so the code can be made nicer 
private void createAdditionalToolbarActions() 
{ 
    getViewSite().getActionBars().getToolBarManager().add(new GroupMarker("additions")); //$NON-NLS-1$ 
    getViewSite().getActionBars().getToolBarManager().prependToGroup("additions", new SaveAction()); //$NON-NLS-1$ 
    getViewSite().getActionBars().updateActionBars(); 
} 

方法getViewSiteViewPart一部分。視圖內容創建完成後調用它。

SaveAction必須實施IActionIContributionItem。爲方便起見,只需從org.eclipse.jface.action.Action擴展SaveAction並調用方法,如setImageDescriptorsetToolTipText

做所有您的企業登錄run覆蓋。

+0

感謝您的建議,但我想ToolItem分解工具欄下面一行,怎麼做? – Ace 2014-11-03 02:03:18

+0

@Ace我很抱歉,但我不完全理解你的問題。你不能只是在側面複合材料上創建你的工具欄嗎? – GGrec 2014-11-03 09:01:24

相關問題