Sonntag, 15. Mai 2011

Eclipse RCP - Bild laden

Angenommen das Bild java.png befindet sich im Verzeichnis pluginprojekt/icons. Das Verzeichniss pluginprojekt ist dabei das Projektverzeichniss. Um dieses Bild in einem org.eclipse.swt.graphics.Image Objekt zu erzeugen werden fogende Zeilen Code benötigt:


import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Platform;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.graphics.Image;
import org.osgi.framework.Bundle;

// ... 

Bundle bundle = Platform.getBundle(Activator.PLUGIN_ID); 
ImageDescriptor imgDescr = ImageDescriptor.createFromURL(
    FileLocator.find(bundle,new Path("icons/java.png"),null)); 
Image img = imgDescr.createImage();


Die Activator.PLUGIN_ID ist die ID des Plugins. Die Klasse Activator wudre mit der Erzeugung des Mail Template erzeugt.

Dies ist eine einfach Lösung, bei der das Bild in den Speicher geladen wird. Prinzipiell sollen die Bilder in einer Anwendung verwaltet werden. Ein Hands-On Tutoiral wie Bilder mit der ImageRegistry geladen und angezeigt werden können findet ihr im Posting Eclipse RCP - Bilder für Fortgeschrittene.

Keine Kommentare:

Kommentar veröffentlichen