ListViewer上未调用labelprovider getImage

| 我有一个带有自定义LabelProvider的ListViewer。 getText部分工作正常,但从不调用LabelProvider的getImage方法。 我也尝试使用DecoratedLabelProvider,但这也不起作用。
class RadioLabelProvider extends LabelProvider{

    Display d;
    public RadioLabelProvider(Display d)
    {
        this.d = d;
    }

    @Override
    public Image getImage(Object element)
    {
        Image image = d.getSystemImage(SWT.ICON_INFORMATION);
        return image;
    }

    @Override
    public String getText(Object element)
    {
        RadioElement re = (RadioElement) element;
        return re.getIP();
    }
}
用法:
availableDevicesList = new ListViewer(this, SWT.SINGLE | SWT.BORDER);
availableDevicesList.setContentProvider(new ArrayContentProvider());
availableDevicesList.setLabelProvider(new RadioLabelProvider(getDisplay()));
availableDevicesList.setInput(devices);
我究竟做错了什么?还是ListViewer不支持图像? 谢谢     
已邀请:
        我发现在ListViewers上,getImage确实不会被调用。 取而代之的是,我使用了带有单个列的TableViewer。 DecoratingLableProvider也可以工作,因此我可以根据对象状态设置图像。     
        在类
ListViewer
的JFace源头注释中,您发现ListViewer是   基于SWT
List
控件的具体查看器。 和   请注意,SWT
List
控件仅支持显示字符串,不支持图标。如果需要显示项目图标,请改用
TableViewer
。     

要回复问题请先登录注册