Zum Inhalt springen

Problem beim Laden von Grafiken mit ImageIcon


Empfohlene Beiträge

Geschrieben

Hallo,

ich hab folgendes Problem. In einer Klasse lade ich mir eine Grafik über

new ImageIcon("images/tree.gif");

Diese Klasse verpacke ich nach dem Compilieren in eine JAR Datei, zusammen mit der Grafik. Die Klasse benutze ich nun in einer anderen Applikation. Dummerweise findet er dann die Grafiken nicht, da er sie immer relativ zu der Applikation sucht, in der die Klasse benutzt wird.

Ich sehe gerade, dass passiert auch wenn ich keine JAR Datei mache.

Also nochmals zu verdeutlichung:

Ordner

|- Ordner2

| |- images

| | |- tree.gif

| |- class1

|- Ordner3

| |-class2

In class 1 lade ich die Grafik. Class 2 benutzt class1 und beim Starten wird die Grafik in Ordner3/images gesucht, dens ja gar nicht gibt. Ich bin verwirrt. Weiss da jemand Rat??

Danke schon mal

Timo

Geschrieben

hallo,

schon mal ohne jar archiv probiert???

bin mir nich ma ganz sicher...

aendere es mal in

/images/tree.gif

MfG eax

ps: im notfall kann ich nochmal nachsehen

<FONT COLOR="#a62a2a" SIZE="1">[ 14. Oktober 2001 20:08: Beitrag 1 mal editiert, zuletzt von eax ]</font>

Geschrieben

Hi,

ja wenn Du weißt, daß er relativ zur angegebenen Klasse liegt (ist wirklich so), dann verwende doch relative Pfade, also in Deinem Fall ../ordner2/images/tree.gif

Sollte eigentlich gehen (zumindest weiß ich keinen Grund, warum es nich gehen sollte)

MfG Markus

Geschrieben

Na ja, ich möchte diese Klasse halt in eine JAR verpacken, damit ich sie unabhängig in beliebigen Projekten verwenden kann. Da kann ich ja dann den Pfad nicht jedes mal verändern , das wär ja doof...

Gruss

Habi

Geschrieben

Sodele,

habs selbst gefunden. Für alle die es interessiert:

URL iconURL = ClassLoader.getSystemResource("images/test.gif");

ImageIcon test = new ImageIcon(iconURL);

Funktioniert!

Habi

Geschrieben

Ich mach das immer folgenermaßen:

new javax.swing.ImageIcon(getClass().getResource("/ord1/ord2/search_.gif"));

dabei sollte der classpath vor den ord1 sitzen.

d.h. im order "neuerOrdner" liegt dieser ganze mist,

dann sollte "neuerOrdner" im Classpath angegeben werden.

Das sollte funktionieren ;)

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...