gpt4 book ai didi

java - 表列: Show only image

转载 作者:行者123 更新时间:2023-12-02 07:33:19 24 4
gpt4 key购买 nike

我根据 boolean 值的状态将图像放置在列中。

col = new TableViewerColumn(this, SWT.NONE);
col.getColumn().setWidth(70);
col.getColumn().setText("Print Status");
col.setLabelProvider(new ColumnLabelProvider() {
@Override
public Image getImage(Object element) {
if (((AplotResultsDataModel.ResultsData) element).isSuccess()) {
return SUCCESS;
}
return FAIL;
}
});

这是getImage方法

private static Image getImage(String file) {
Bundle bundle = FrameworkUtil.getBundle(Viewer.class);
URL url = FileLocator.find(bundle, new Path("icons/" + file), null);
ImageDescriptor image = ImageDescriptor.createFromURL(url);
return image.createImage();
}

我尝试了两种创建图像的方法。

private static final Image FAIL = getImage("failed.png");

还有

final Image FAIL = new Image(Display.getDefault() ,"D:/Users/workspace/com.aplot/icons/failed.png");

在这两种情况下,图像都会显示,但旁边有一个文本路径。该路径看起来像是该列的数组值。

示例:

[图片] com.aplot.datamodel.ResultsDataModel$ResultsData@9cce9

如何删除文本并只显示图像?

最佳答案

重写ColumnLabelProvider中的getText()方法并返回空字符串。如果你不重写,它总是显示element.toString()。这就是为什么您会在那里看到数据对象的 toString() 值。

关于java - 表列: Show only image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12646171/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com