import java.awt.image.*;
import java.awt.*;
import javax.swing.*;

public class VolatileImageTest1 extends JApplet{

    private VolatileImage image;
    private Image sprite;
    private int width;
    private int height;

    public void init(){
        sprite = getImage(getDocumentBase(), "javacup0.gif");
    }

    private void initVolatileImage(){
        if (image == null || width != getWidth() || height != getHeight()) {
            width = getWidth();
            height = getHeight();
            image = createVolatileImage(width, height);
        }
    }

    public void paint(Graphics g){
        initVolatileImage();

        Graphics gImage = image.getGraphics();
        gImage.setColor(Color.yellow);
        gImage.fillRect(0, 0, width, height);
        if(sprite != null){
            gImage.drawImage(sprite, 0, 0, this);
        }
        gImage.dispose();
        g.drawImage(image, 0, 0, this);
    }
}
