import java.awt.*; import java.awt.image.*; /** * A class for drawing a BufferedImage object. It can be used in * connection with double buffering. * * @author Frank Klawonn * Last change 27.05.2005 */ public class BufferedImageDrawer extends Frame { //These image is drawn when the paint method is called. public BufferedImage bi; //This Graphics2D object can be used to draw on bi. public Graphics2D g2dbi; //The Graphics2D object used in the paint method. private Graphics2D g2d; /** * Constructor */ public BufferedImageDrawer(BufferedImage buffIm, int width, int height) { bi = buffIm; g2dbi = bi.createGraphics(); //Enables the closing of the window. addWindowListener(new MyFinishWindow()); this.setTitle("Double-Buffering"); this.setSize(width,height); this.setVisible(true); } public void paint(Graphics g) { update(g); } public void update(Graphics g) { g2d = (Graphics2D) g; g2d.drawImage(bi,0,0,null); } }