2016-12-07 17 views
0

我有一個非常標準的StyledCellLabelProvider,但是當我設置StyleRanges既不SWT.BOLD也不SWT.ITALIC被識別(即使JavaDoc的狀態都是有效值)。然而,下劃線被正確渲染。StyledCellLabelProvider不知道SWT.BOLD也SWT.ITALIC

我也嘗試設置對象StyleRange#font,但無濟於事。

綜合例如:

public class BoldStyledCellExample extends ApplicationWindow { 

    public static void main(final String[] args) { 
     final BoldStyledCellExample example = new BoldStyledCellExample(); 
     example.setBlockOnOpen(true); 
     example.open(); 
    } 

    public BoldStyledCellExample() { 
     super(null); 
    } 

    @Override 
    protected Control createContents(final Composite parent) { 
     final TableViewer viewer = new TableViewer(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION); 
     viewer.setContentProvider(ArrayContentProvider.getInstance()); 

     final TableViewerColumn column1 = new TableViewerColumn(viewer, SWT.LEFT); 
     column1.getColumn().setText("Foo"); 
     column1.getColumn().setWidth(250); 
     column1.setLabelProvider(new StyledCellLabelProvider() { 

      @Override 
      public void update(final ViewerCell cell) { 
       final String letter = (String) cell.getElement(); 

       cell.setText(letter); 
       cell.setStyleRanges(new StyleRange[] { new StyleRange(0, letter.length(), null, null, SWT.ITALIC) }); 
       super.update(cell); 
      } 
     }); 

     viewer.setInput(Arrays.asList("A", "B", "C", "D")); 
     return viewer.getTable(); 
    } 
} 

因爲這可能只是一個操作系統的問題,我使用Eclipse 3.7(但它不與任何4.5工作)和Win10。

這裏有什麼問題?

回答

1

這是一個已知的錯誤350041目前沒有修復。這個bug是一個很老的bug的副本131988

相關問題