Eclipse MenuManager:获取Image的ImageDescriptor?

Gna*_*ark 6 java swt contextmenu image menu

我不能让这个工作,所以我认为在这里张贴可能是一个明智的想法...

我在SWT中有一个上下文菜单(实际上它是一个Eclipse插件).这是一个级联菜单,所以当你将鼠标悬停在某个条目上时它会立即扩展...

我的问题是,我想在菜单上附上一个小图标,但我很挣扎!

代码:....

            manager.add(new Separator());

            // icon for the "change color" menu
            ImageDescriptor icon = ImageDescriptor.createFromFile(null,
                "icons/palette_brush.png");

            // submenu
            MenuManager colorMenu = new MenuManager("Menu", icon,  null);

            // Actions
            colorMenu.add(someAction);

            // add the action to the submenu
            manager.add(colorMenu);

           ....
Run Code Online (Sandbox Code Playgroud)

我的问题是,可以使用2个参数(无附加图像)或3(带附加图像)调用新的MenuManager.图像应作为ImageDescriptor传递.

问题基本上是:
"如何从图像中获取Imagedescriptor?"
也许这是一个愚蠢的错误 - 但我无法从图像文件中获取ImageDescriptor.我有一个*.png图标可供使用,但我很难将其合并.

如果有人可以帮助解决一个片段,那么从图像文件中获取一个ImageDescriptor,这将是太棒了!

最好的祝福!

MenuManager文档:
MenuManager Docu

nan*_*nda 13

Bundle bundle = Platform.getBundle(pluginId);
URL fullPathString = BundleUtility.find(bundle, "icons/palette_brush.png");
ImageDescriptor.createFromURL(fullPathString);
Run Code Online (Sandbox Code Playgroud)

pluginId 是您放置图标的插件的ID.