Start Search Contents Index Links About
Paint.java
/*
 * Author: Havard Rast Blok
 * E-mail:  
 * Web   : www.rememberjava.com
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

/* Every simple drawing program.
 
 * MouseInputListener requires JDK 1.4
 */
public class Paint extends JFrame implements MouseInputListener
{
  private MyCanvas myCanvas;
  private Point p;

  public Paint()
  {
    //super("MouseAction testing program");
    setSize(250,250);
    
    myCanvas = new MyCanvas();
    getContentPane().add(myCanvas);
    
    //the the mouse event listeners
    //remember that MouseInputListener extends both MouseListener and MouseMotionListener
    myCanvas.addMouseListener(this);
    myCanvas.addMouseMotionListener(this);
    
   setVisible(true);
  }
  
  // Methods inherited from MouseListener
  
  public void mouseClicked(MouseEvent e)
  {
    //System.out.println("MouseAction - mouseClicked");
  }
  
  public void mouseEntered(MouseEvent e
  {
    //System.out.println("MouseAction - mouseEntered");
  }
  
  public void mouseExited(MouseEvent e
  {
    //System.out.println("MouseAction - mouseExited");
  }
  
  public void mousePressed(MouseEvent e
  {
    //System.out.println("MouseAction - mousePressed");
  }
  
  public void mouseReleased(MouseEvent e)  
  {
    //System.out.println("MouseAction - mouseReleased");
  }
  
  // Methods inherited from MouseMotionListener
  
  public void mouseDragged(MouseEvent e
  {
    System.out.println("MouseAction - mouseDragged - e:"+e);
    
    p = e.getPoint();
    myCanvas.repaint();
    
  }
  
  public void mouseMoved(MouseEvent e)  
  {
    //System.out.println("MouseAction - mouseMoved");
  }


  public static void mainString [] args)
  {
    new Paint();  
  }

  
  /* Local class to draw on the Canvas
   * Remember: this class has access to the local variables
   * of the parrent class.
   */
  class MyCanvas extends Canvas
  {
    public void paint(Graphics g)
    {
      System.out.println("paint");
    }
    
    public void update(Graphics g)
    {
      System.out.println("update");
      
      ifp != null )
      {
        g.fillRect(p.x, p.y, 11);
      }      
    }
  }
}


  


site: Håvard Rast Blok
mail:
updated: 27 July 2007