// Scott DeRuiter 3/27/03 // Resize.java // An image that can be resized. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Resize extends JApplet implements MouseListener, MouseMotionListener { private int xpos, ypos, width, height; private Image image; private DrawingArea draw; public Resize ( ) { xpos = ypos = width = height = 0; } public void init ( ) { draw = new DrawingArea ( ); setContentPane ( draw ); draw.setBackground ( Color.blue ); draw.addMouseListener(this); draw.addMouseMotionListener(this); image = getImage ( getDocumentBase ( ), "DavidAndNicolas.jpg" ); WaitForImage ( this, image ); } public void WaitForImage ( JApplet component, Image image ) { MediaTracker tracker = new MediaTracker ( component ); try { tracker.addImage ( image, 0 ); tracker.waitForID ( 0 ); } catch ( InterruptedException e ) { e.printStackTrace ( ); } } class DrawingArea extends JPanel { public void paintComponent ( Graphics g ) { super.paintComponent ( g ); boolean b = g.drawImage ( image, xpos, ypos, width, height, draw ); } } public void mouseMoved ( MouseEvent e ) {} public void mouseDragged ( MouseEvent e ) { width = e.getX ( ) - xpos; height = e.getY ( ) - ypos; draw.repaint ( ); } public void mousePressed ( MouseEvent e ) { xpos = e.getX ( ); ypos = e.getY ( ); width = height = 0; draw.repaint ( ); } public void mouseReleased ( MouseEvent e ) { draw.repaint ( ); } public void mouseClicked ( MouseEvent e ) {} public void mouseEntered ( MouseEvent e ) {} public void mouseExited ( MouseEvent e ) {} }