3

我在 JFace 中有一些列图像TableViewer。不幸的是,column-image 似乎只允许 16px 宽,这对于显示两个图像来说太小了。我尝试过使用 32px 的图像,但它被压缩为 16px x 16px 的图像。也许有一些装饰器可以用来自动覆盖两张图片?

有没有可能做到这一点?

4

2 回答 2

3

您可以使用CompositeImageDescriptor来做到这一点。

于 2012-11-26T12:39:19.223 回答
1

您可以使用. 在 a中绘制Image任意大小的 s 。TableViewerOwnerDrawLabelProvider

然后,您必须在方法中自己绘制图像:

protected void paint(Event event, Object element)

并在方法中定义表格单元格大小:

protected void measure(Event event, Object element)

Vogella在这里提供了一个精彩的教程,其中包含示例代码

结果如下所示:

在此处输入图像描述

如果要覆盖图像,只需将 alpha 设置为GC半透明的GC#setAlpha(int).

于 2012-11-26T10:18:01.463 回答