> Når det drejer sig om java, så prøv på
www.java.sun.com,
> da fandt jeg flg
(
http://forum.java.sun.com/thread.jsp?forum=22&thread=30833):
>
> URL url = getClass().getResource("pic.gif");
> if (url != null) {
> Image image = getImage(url);
> if (image != null) {
> return new ImageIcon(image,desc);
> }
> }
Det virker ikke i f.eks. Netscape (som der står i tråden), men følgende (som
der også står i tråden) virker vist nok i alle browsere:
/*start kodestump*/
Image temp;
try
{
InputStream in = Originator.getResourceAsStream( "picture.gif" );
if (in == null)
{
return null;
}
byte[] buffer = new byte[in.available()];
in.read(buffer);
temp = Toolkit.getDefaultToolkit().createImage( buffer );
}
catch (IOException e)
{
e.printStackTrace();
}
/*slut kodestump*/
Der er bare to ting, der undrer mig:
1) Hvorfor virker det kun i applet-klassens init()?
2) Hvorfor i alverden bliver mine billeder ikke indlæst ordentligt? Nogle
billeder er indlæst ordentligt, mens andre indlæses ca. halvvejs, og andre
igen bliver totalt forvanskede - f.eks. er et af disse billeder en udfyldt
cirkel, der efter indlæsning mest ligner et halv skakbrædt. Hvilke billeder,
der indlæses ordentligt, og hvilket der bliver forvanskede skifter fra gang
til gang - eneste genganger i problematikken er et baggrundsbillede, der
aldrig bliver indlæst. Det billede er ca. 6 gange større end de andre
billeder, så umiddelbart gætter jeg på, at der er et timing-problem i
ovenstående kodestump, når der indlæses adskillige billeder.
Nogle forslag/idéer?
Venligst
Martin Schou