ちらつきを防ぐためオフスクリーンを利用し,画像が完全にロードされてから表示する。
import java.applet.*;
import java.awt.*;
public class ja02 extends Applet
{
Graphics g;
Image pic;
boolean imgload = false;
public void init()
{
g = getGraphics();
pic = getImage(getCodeBase(),"pic01.jpg");
Image offimg = createImage(size().width,size().height);
Graphics offg = offimg.getGraphics();
offg.drawImage(pic,0,0,this);
}
public boolean imageUpdate(Image img,int infoflags,int x,int y,int w,int h)
{
if(infoflags == ALLBITS)
{
imgload = true;
repaint();
return false;
}
else
return true;
}
public void paint(Graphics g)
{
if (! imgload)
showStatus("pic01.jpg: Loading image");
else
{
showStatus("pic01.jpg:Open");
g.drawImage(pic,0,0,null);
}
}
}
以上