Vinnaren i pepparkakshustävlingen!
2012-06-22, 16:17
  #1
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?
Citera
2012-06-22, 16:49
  #2
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.
Citera
2012-06-22, 21:49
  #3
Medlem
Voldemort2s avatar
Eftersom den fungerar via Eclipse är det ju inget problem med sökvägen.
Citera
2012-06-23, 16:03
  #4
Moderator
Protons avatar
Kan du inte posta lite relevant kod?
Citera
2012-06-24, 22:51
  #5
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.
Citera
2012-06-25, 00:11
  #6
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.
Citera
2012-06-25, 00:22
  #7
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");
			
		}
	}

Citera
2012-06-25, 00:23
  #8
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.
Citera
2012-06-25, 01:18
  #9
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.
Citera
2012-06-25, 01:28
  #10
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.
Citera
2012-06-25, 12:39
  #11
Medlem
Voldemort2s avatar
Nu fick jag det att fungera. Tack för hjälpen!
Citera
2012-06-25, 22:35
  #12
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.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback