52 896 besökare online
858 063 medlemmar • 45 864 522 inlägg
Användarnamn 
Lösenord
Flashback Forum > Dator och IT > Systemutveckling > Java
Svara på ämne
Ämnesverktyg
Voldemort2
Medlem
Voldemort2s avatar
Jag har några små png-bilder, som jag visar i en applet. När jag kör appleten via eclipses appletviewer ser man dem perfekt, men när man kör appleten i firefox visas inte bilderna. Hur ska jag göra för att bilderna ska visas även där?
 
Un-named
Medlem
Pröva skriv den fullständiga vägen till filen, t.ex C:/Program/Eclipse/work/mywork/image.png, istället för image.png eller vad du nu har skrivit.
Om du redan har gjort så, så vet jag inte.
 
Voldemort2
Medlem
Voldemort2s avatar
Eftersom den fungerar via Eclipse är det ju inget problem med sökvägen.
 
Proton
Moderator
Protons avatar
Kan du inte posta lite relevant kod?
 
Voldemort2
Medlem
Voldemort2s avatar
Kod:
public void setPosition(Graphics g) { for(int i = 0; i < pieces.size(); i++) { Point p = getXY(pieces.get(i)); g.drawImage(pieces.get(i).getImage(), p.x, p.y, null); } }

I den här metoden ritas bilderna. Bilden som skapas är av typen BufferedImage.
 
keleb
Medlem
kelebs avatar
Skulle gärna se mer relevant kod. Kod där du hämtar in bilden till koden (och som det verkar som, lägger till den i ett objekt som du sedan placerar i en lista). Alltså avsnitt kod där du skriver in filens sökväg. Det du också kan testa är att se vad drawImage returnerar. Det kan inte peka på vad som är fel, men det skulle eventuellt kunna utesluta saker.
 
Voldemort2
Medlem
Voldemort2s avatar
Kod:
protected void setImage() { img = null; String tmp = "../images/" + color + "_" + type + ".png"; try { img = ImageIO.read(new File(tmp)); } catch(Exception e) { throw new RuntimeException("Fel vid inläsningen"); } }
 
Voldemort2
Medlem
Voldemort2s avatar
Kod:
protected void setImage() { img = null; String tmp = "../images/" + color + "_" + type + ".png"; try { img = ImageIO.read(new File(tmp)); } catch(Exception e) { throw new RuntimeException("Fel vid inläsningen"); } }

Här hämtas bilden.
 
frelli
Medlem
frellis avatar
Citat:
Ursprungligen postat av Voldemort2
Eftersom den fungerar via Eclipse är det ju inget problem med sökvägen.
Kan det ju visst vara. Beror ju på vilken buildpath som är inställd för just det aktuella projektet i eclipse. Testa som sagt att skriva in hela sökvägen.
 
keleb
Medlem
kelebs avatar
Gör du en kopia dina .class och resursfiler och placerar dem i en annan katalog eller är sökvägen till appleten i html till platsen i ditt eclipse workspace?

I det första fallet skulle jag definitivt se över hur du skapar sökvägen. Använd gärna new URL(getCodeBase() , "relative path from code base") som argument till read istället för en File. Är det det senare fallet så rekommenderar jag dig att ändra koden enligt ovan och sedan göra en kopia på .class och resursfilerna. Du kan då utesluta att det har någonting med sökvägen att göra och att Eclipse appletviewer hittar någon genväg.

Kontrollera är bygga in en kontroll på att bilden du får inte är null efter att du läst in den. Är den inte null gör du som vanligt och lägger till den i din lista eller vad det nu är du gör, men är den null ser du till att skicka något felmeddelande eller exception.
 
Voldemort2
Medlem
Voldemort2s avatar
Nu fick jag det att fungera. Tack för hjälpen!
 
frelli
Medlem
frellis avatar
Citat:
Ursprungligen postat av Voldemort2
Nu fick jag det att fungera. Tack för hjälpen!
Då skriver du lämpligen hur du fick det att fungera. På så sätt hjälper du folk som i framtiden hittar hit till tråden och som då kanske har samma problem som du hade.
 
Svara på ämne
Topp Dela »