【问题标题】:How to Color TableViewer Rows alternatively如何为 TableViewer 行着色
【发布时间】:2011-12-10 23:21:24
【问题描述】:

我在我的 rcp 应用程序中使用 Viewer Framework,我想为查看器行着色,我试图覆盖 ColumnLabelProvider 的 getBackground 方法,下面是代码 sn-p

col.setLabelProvider(new ColumnLabelProvider(){
  ----//other methods 
  @override
  public Color getBackground(Object element) {
  return gray;//here gray is color object defined somewhere in class
  }
 });

这为列着色,但不是一行,下面是输出

我如何正确地做到这一点

【问题讨论】:

    标签: eclipse-plugin swt eclipse-rcp jface


    【解决方案1】:

    您可以找到使用IColorProvider 的示例here。也许您可以在代码中重用getBackground() 方法,只需更改对tableViewer 的引用即可:

    public Color getBackground(Object element) {
        ArrayList list = (ArrayList) tableViewer.getInput();
        int index = list.indexOf(element);
        if ((index % 2) == 0) {
            return gray;
        } else {
            return null;
        }
    }
    

    【讨论】:

    • 有没有人想出,如何为tableviewer设置IColorProvider?
    • 使用tableViewer.setLabelProvider(provider)provider 可以实现可选接口IColorProvider
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-01
    • 1970-01-01
    • 2018-06-28
    • 2012-06-23
    • 1970-01-01
    • 2021-10-14
    • 1970-01-01
    相关资源
    最近更新 更多