Discussion:
Bilder einbinden unter Eclipse
(zu alt für eine Antwort)
Marcel Schroeder
2004-08-04 10:46:14 UTC
Permalink
Hallo,

ich habe eclipse 3.0 und möchte mit

jl = new JLabel("Java Technology Dive Log",
new ImageIcon("diveflag.gif"),
JLabel.CENTER);

ein Bild einbinden, funkt aber nicht.
Das Bild ist im Projektbaum genau auf einer Ebene mit den Quelldatein,
genauso ist es im realen Workspace-Verz.

Am Konstruktor von ImageIcon liegt es nicht, der akzeptiert einen Pfad als
String.
Hab schon recherchiert und vieles ausprobiert, ging aber nicht.

Am besten wäre ein Verz. resources/images unter src/

source- und bin-Dateien sind bei mir getrennt.

danke,
mfg, Marcel
--
Using Opera's revolutionary e-mail client: http://www.opera.com/m2/
Christian Poecher
2004-08-04 12:25:12 UTC
Permalink
Post by Marcel Schroeder
jl = new JLabel("Java Technology Dive Log",
new ImageIcon("diveflag.gif"),
JLabel.CENTER);
ein Bild einbinden, funkt aber nicht.
Hast du auch JPanel#add(jl) aufgerufen? (oder was auch immer du für
einen Container benutzt)

chris
Marcel Schroeder
2004-08-04 13:26:01 UTC
Permalink
Post by Christian Poecher
Post by Marcel Schroeder
jl = new JLabel("Java Technology Dive Log",
new ImageIcon("diveflag.gif"),
JLabel.CENTER);
ein Bild einbinden, funkt aber nicht.
Hast du auch JPanel#add(jl) aufgerufen? (oder was auch immer du für
einen Container benutzt)
chris
hab ich gemacht, denn ich folge dem tutorial

http://java.sun.com/developer/onlineTraining/new2java/divelog/part2/page6.jsp

welches aber nicht ganz fehlerfrei ist.

jl-Label wird auch platziert, in einem Borderlayout, denn sein Text
erscheint, das Icon aber nicht.

mfg,
Marcel--
Michael Holtermann
2004-08-04 12:39:15 UTC
Permalink
Moin!
Post by Marcel Schroeder
Das Bild ist im Projektbaum genau auf einer Ebene mit den Quelldatein,
genauso ist es im realen Workspace-Verz.
Liegt es auch im selben Pfad wie die class-Dateien?

Grüße, Michael.
--
Wir bieten Standfläche und Standsystem, nicht Urlaub.
-- Joey
Marcel Schroeder
2004-08-04 13:17:06 UTC
Permalink
On Wed, 04 Aug 2004 14:39:15 +0200, Michael Holtermann
Post by Michael Holtermann
Moin!
Post by Marcel Schroeder
Das Bild ist im Projektbaum genau auf einer Ebene mit den Quelldatein,
genauso ist es im realen Workspace-Verz.
Liegt es auch im selben Pfad wie die class-Dateien?
Grüße, Michael.
ja, geht trotzdem nicht.

Marcel
--
Using Opera's revolutionary e-mail client: http://www.opera.com/m2/
Marcel Schroeder
2004-08-04 13:17:06 UTC
Permalink
On Wed, 04 Aug 2004 14:39:15 +0200, Michael Holtermann
Post by Michael Holtermann
Moin!
Post by Marcel Schroeder
Das Bild ist im Projektbaum genau auf einer Ebene mit den Quelldatein,
genauso ist es im realen Workspace-Verz.
Liegt es auch im selben Pfad wie die class-Dateien?
Grüße, Michael.
ja, geht trotzdem nicht.

Marcel
--
Using Opera's revolutionary e-mail client: http://www.opera.com/m2/
Ulrich Schramme
2004-08-04 13:08:31 UTC
Permalink
Post by Marcel Schroeder
Hallo,
ich habe eclipse 3.0 und möchte mit
jl = new JLabel("Java Technology Dive Log",
new ImageIcon("diveflag.gif"),
JLabel.CENTER);
ein Bild einbinden, funkt aber nicht.
Das Bild ist im Projektbaum genau auf einer Ebene mit den Quelldatein,
genauso ist es im realen Workspace-Verz.
Am Konstruktor von ImageIcon liegt es nicht, der akzeptiert einen Pfad
als String.
Hab schon recherchiert und vieles ausprobiert, ging aber nicht.
Am besten wäre ein Verz. resources/images unter src/
source- und bin-Dateien sind bei mir getrennt.
danke,
mfg, Marcel
Hatte das Problem neulich auch. Ich habe die Grafiken im /bin -
Verzeichnis. Wenn ich eine neue Grafik hinzufüge, klicke ich mit rechts
im Package Explorer auf "refresh". Danach haut es bei mir hin.

Ulli
--
-- Ulrich Schramme
-- www.u-schramme.de
Marcel Schroeder
2004-08-04 13:39:10 UTC
Permalink
Post by Ulrich Schramme
Post by Marcel Schroeder
Hallo,
ich habe eclipse 3.0 und möchte mit
jl = new JLabel("Java Technology Dive Log",
new ImageIcon("diveflag.gif"),
JLabel.CENTER);
ein Bild einbinden, funkt aber nicht.
Das Bild ist im Projektbaum genau auf einer Ebene mit den Quelldatein,
genauso ist es im realen Workspace-Verz.
Am Konstruktor von ImageIcon liegt es nicht, der akzeptiert einen Pfad
als String.
Hab schon recherchiert und vieles ausprobiert, ging aber nicht.
Am besten wäre ein Verz. resources/images unter src/
source- und bin-Dateien sind bei mir getrennt.
danke,
mfg, Marcel
Hatte das Problem neulich auch. Ich habe die Grafiken im /bin -
Verzeichnis. Wenn ich eine neue Grafik hinzufüge, klicke ich mit rechts
im Package Explorer auf "refresh". Danach haut es bei mir hin.
Ulli
mach ich auch so, hilft aber nicht. Ist der Pfad "Bild.gif" denn so
richtig benannt? Müsste ja der Fall sein, wenn das Bild direkt neben den
classes liegt.

danke,
Marcel
--
Using Opera's revolutionary e-mail client: http://www.opera.com/m2/
Ulrich Schramme
2004-08-04 15:27:15 UTC
Permalink
On Wed, 04 Aug 2004 15:08:31 +0200, Ulrich Schramme
Post by Ulrich Schramme
Post by Marcel Schroeder
Hallo,
ich habe eclipse 3.0 und möchte mit
jl = new JLabel("Java Technology Dive Log",
new ImageIcon("diveflag.gif"),
JLabel.CENTER);
ein Bild einbinden, funkt aber nicht.
Das Bild ist im Projektbaum genau auf einer Ebene mit den
Quelldatein, genauso ist es im realen Workspace-Verz.
Am Konstruktor von ImageIcon liegt es nicht, der akzeptiert einen
Pfad als String.
Hab schon recherchiert und vieles ausprobiert, ging aber nicht.
Am besten wäre ein Verz. resources/images unter src/
source- und bin-Dateien sind bei mir getrennt.
danke,
mfg, Marcel
Hatte das Problem neulich auch. Ich habe die Grafiken im /bin -
Verzeichnis. Wenn ich eine neue Grafik hinzufüge, klicke ich mit
rechts im Package Explorer auf "refresh". Danach haut es bei mir hin.
Ulli
mach ich auch so, hilft aber nicht. Ist der Pfad "Bild.gif" denn so
richtig benannt? Müsste ja der Fall sein, wenn das Bild direkt neben
den classes liegt.
danke,
Marcel
Habe das ganze so gemacht:

private Icon stars = new
ImageIcon(ClassLoader.getSystemResource("stars.jpg"));

Wird auch hinterher in meinem *.jar - File gefunden.

Ulli
--
-- Ulrich Schramme
-- www.u-schramme.de
Marcel Schroeder
2004-08-04 13:39:10 UTC
Permalink
Post by Ulrich Schramme
Post by Marcel Schroeder
Hallo,
ich habe eclipse 3.0 und möchte mit
jl = new JLabel("Java Technology Dive Log",
new ImageIcon("diveflag.gif"),
JLabel.CENTER);
ein Bild einbinden, funkt aber nicht.
Das Bild ist im Projektbaum genau auf einer Ebene mit den Quelldatein,
genauso ist es im realen Workspace-Verz.
Am Konstruktor von ImageIcon liegt es nicht, der akzeptiert einen Pfad
als String.
Hab schon recherchiert und vieles ausprobiert, ging aber nicht.
Am besten wäre ein Verz. resources/images unter src/
source- und bin-Dateien sind bei mir getrennt.
danke,
mfg, Marcel
Hatte das Problem neulich auch. Ich habe die Grafiken im /bin -
Verzeichnis. Wenn ich eine neue Grafik hinzufüge, klicke ich mit rechts
im Package Explorer auf "refresh". Danach haut es bei mir hin.
Ulli
mach ich auch so, hilft aber nicht. Ist der Pfad "Bild.gif" denn so
richtig benannt? Müsste ja der Fall sein, wenn das Bild direkt neben den
classes liegt.

danke,
Marcel
--
Using Opera's revolutionary e-mail client: http://www.opera.com/m2/
Christian Schulte
2004-08-04 14:54:39 UTC
Permalink
Post by Marcel Schroeder
[...]
ein Bild einbinden, funkt aber nicht.
[...]
Ich kann dir nicht sagen warum das so net geht, aber ich kann dir eine
Alternative anbieten:

private static ImageIcon loadIcon(String name)
{
String packageName = "/resources/";

// build the url to the icon
URL url = TestFrame.class.getResource(packageName + name);
// build the icon if the resource is available
if (url == null)
return null;
else
return new ImageIcon(url);
}

Da du ja wahrscheinlich noch mehr Icons zu laden hast, würde ich einfach
mal so das Factroy-Pattern hier als Schlagwort einwerfen.

Gruß
Christian
Loading...