Vom
Umgang mit Icons
In einer GUI-Spezifikation können zahlreiche grafische Element verwendet
werden - wie gif, png oder jpg. Oft werden diese Elemente in verschiedenen
Zusammenhänge mehrfach verwendet.
Das Problem besteht nun darin, wohin mit diesen Files?
Grundsätzliches Vorgehen:
Icons von Sun
-
Dem GuiBuilder liegen die Icons von Sun mit bei (siehe im Verzeichnis
lib/ die Datei icons.zip).
Diese Datei muß bei einer Installation also immer mit ausgeliefert
werden.
-
Alle Icons in icons.zip liegen unterhalb eines Verzeichnisses
icons/.
-
Diese Icons sind im Classpath des GuiBuilders (siehe guibuilder.jar) bereits
mit enthalten.
-
Um diese Icons in einer Spezifikation anzusprechen wird ein absoluter
Pfad verwendet.
Beispiel: <Button label="Save"
img="/icons/Save24.gif"/>
Man beachte den "/" am Anfang.
Groß- und Kleinschreibung ist hier auch unter Windows zu beachten!
-
Der Charm dieses Vorgehens besteht darin, daß alle Spezifikationen
auf diese Icons Zugriff haben, egal ob die Anwendung als Applet oder Application
in irgendeinem Verzeichnis läuft.
Weitere Images
Sollen Images eingesetzt werden, die dort nicht enthalten sind, so gibt es
zwei Wege dieses umzusetzen:
-
Die weiteren Images werden "zu Fuß" in icons.zip ergänzt und auf
die gleiche Art wie oben angesprochen.
Der Nachteil besteht darin, daß wenn eine neue Version des GuiBuilder
installiert wird, dieser Vorgang jeweils wiederholt werden muß.
-
Es wird ein Verzeichnis eingerichtet, in dem diese Images gesammelt werden.
Diese Verzeichnis liegt z.B. unterhalb der installierten Anwendung; also
wenn die Anwendung aus "/myApp" gestartet wird, wird ein z.B. ein Verzeichnis
"/myApp/images" eingerichtet.
In diesem Fall müssen die Icons in der Spezifikation mit einem
relativen Pfad angesprochen werden!
Beispiel: <Button label="Save"
img="images/MySave.gif"/>
Man achte auf den fehlenden "/" am Anfang.
Der Nachteil dieses Verfahrens besteht darin, daß die XML-Dokumente
der Gui-Spezifikation und die von ihnen angesprochen Images einander "finden"
müssen, also immer gemeinsam zu installieren sind.
Error Image
Wird ein Image nicht gefunden, wird statt dessen der Icon
angezeigt.
Dieses Icon stammt aus sysimages/broken.gif