doublebuffer.java~3~

来自「JAVA语言的教程,里面包括讲义和代码,是学习JAVA语言的参考资料.」· JAVA~3~ 代码 · 共 50 行

JAVA~3~
50
字号
package imagetest;

import java.applet.Applet;
import java.awt.HeadlessException;
import java.awt.*;
public class DoubleBuffer extends Applet
{
  private Image[] imgs;
  private int totalImages=10;
  private int currentImage;
  private int i=0;
  private Image imgBuf;
  private Graphics gBuf;
  public void init()
  {
    imgBuf=createImage(600,400);
    gBuf=imgBuf.getGraphics();
    gBuf.setColor(Color.white);
    gBuf.fillRect(0,0,600,400);
    imgs=new Image[totalImages];
    for(int i=0;i<totalImages;i++)
    {
      imgs[i] = getImage(getDocumentBase(), "T" + (i + 1) + ".gif");
    }
    //img=getImage(getDocumentBase(),"T1.gif");
  }
  public void start()
  {
    currentImage=0;
    gBuf.drawImage(imgs[currentImage],0,0,this);
    currentImage=1;
  }
  public void paint(Graphics g)
  {

    System.out.println("draw:"+i++);
    g.drawImage(imgBuf,0,0,this);
    gBuf.fillRect(0, 0, 600, 400);
    gBuf.drawImage(imgs[currentImage], 0, 0, this);
    currentImage = ++currentImage % 10;
    try {
      Thread.sleep(500);
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
    repaint();
  }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?