3

我想将图像添加到 Eclipse RCP 列表中的项目。我提供了一个自定义的 LabelProvider,它看起来像:

package com.puresol;

import org.eclipse.jface.viewers.LabelProvider;
import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;

public class MyListLabelProvider extends LabelProvider {

    private final Image folderImage = PlatformUI.getWorkbench()
        .getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);

    @Override
    public void dispose() {
        folderImage.dispose();
    }

    @Override
    public String getText(Object element) {
        return element.toString();
    }

    @Override
        public Image getImage(Object element) {
        return folderImage;
    }
}

我通过以下方式添加此标签提供程序:

listViewer.setLabelProvider(new MyListLabelProvider());

我确实得到了正确的文字,但没有图像。我确信由于调试代码而使用了我的标签提供程序,并且我也可以更改提供的标签文本。我只是没有看到图像。图像已加载且非空。

我需要打开什么才能显示标签?我在这里想念什么?

4

1 回答 1

1

我不确定ListViewer是否能够显示图像。尝试切换到单列TableViewer,看看是否有帮助。

于 2012-04-09T12:14:45.707 回答