1

IToolbarManager 确实有问题。我添加了一个像这样的视图的组合和微调器 ot 工具栏

IToolbarManager mgr = getViewSite().getActionBars().getToolBarManager();
mgr.add(spinnerCntrAction);

spinnerCntrAction = new ControContribution(){

 public Control createControl(){
        //Creates composite
        //Create a spinner and add that to composite
        //return composite
 }


};

在 Windows XP/Vista 主题中,此微调器正确显示。但是当程序在 windows 经典主题下运行时,微调器会缩小并且无法正确显示。

这是一个已知问题吗?您知道任何解决方法/补丁吗?

谢谢吉乔伊

4

1 回答 1

0

这是 SWT 中的一个错误。见http://dev.eclipse.org/newslists/news.eclipse.platform.swt/msg44671.html

这是一种解决方法:

mgr.add(new DummyAction());

private static class DummyAction extends Action {
   DummyAction() {
      setEnabled(false);
      setText("     ");
   }
}
...
mgr.add(spinnerCntrAction);

这将导致工具栏管理器使所有控件贡献的大小与操作相同,因此调整操作文本中的空格数以获得所需的结果。

于 2009-12-10T20:42:51.480 回答