在 StyledCellLabelProvider
的子类中,我有这样一行:
ImageDescriptor d = Activator.getImageDescriptor("/icons/sample.gif");
但是,变量
d
总是 null
.奇怪的是,当我在 plugin.xml
中指定完全相同的路径时,图像正确显示在 View 的左上角。 : <view
name="Message"
allowMultiple="true"
icon="/icons/sample.gif"
class="com.myapp.views.EmailView"
id="com.myapp.gui.emailView">
</view>
这个图片在我项目中的路径是
<project>/icons/sample.gif
的标准位置,插件源代码在<project>/src
.令人沮丧的是,示例插件项目“RCP 邮件模板”使用(成功)相同的函数来获取对
ImageDescriptor
的引用。 :ImageDescriptor d = Activator.getImageDescriptor("/icons/sample.gif");
我的插件配置是否有问题,导致在以编程方式引用时找不到图像?
最佳答案
但静态getImageDescriptor
您的方法 Activator
类和“RCP 邮件模板”的 Activator
类(class)不一样。也许您在那里使用了不正确的插件 ID?
关于eclipse-plugin - 即使 plugin.xml 使用相同的图标路径,Activator.getImageDescriptor(path) 也会返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8375174/