import java.awt.event.*;/ Applet实现类 定义一个类,他继承自Applet类 author Administrator / public class WBApplet extends Applet { / 定义个宽度的常量 / final static int DEFAULT_BOARDWIDTH = 800;/ 定义个高的常量 / final static int DEFAULT_BOARDHEIGHT = 400;public void init()  ...    
JAVA程序 求注解 新手 越详细越好 谢谢了。
    package edu.xmut.t1201;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
/**
 * Applet实现类 定义一个类,他继承自Applet类
 * 
 * @author Administrator
 * 
 */
public class WBApplet extends Applet
{
 /*
  * 定义个宽度的常量
  */
 final static int DEFAULT_BOARDWIDTH = 800;
 /*
  * 定义个高的常量
  */
 final static int DEFAULT_BOARDHEIGHT = 400;
 public void init()  //重写init方法,init方法会在applet启动时自动运行
 {
  whiteBoard = new WhiteBoard(this);   //WhiteBoard类初始化
  whiteBoard.reshape(40, 40, DEFAULT_BOARDWIDTH, DEFAULT_BOARDHEIGHT); 
  //移动组件并调整其大小,使其符合新的有界矩形 r。由 40 和 40 指定组件的新位置,由常量 指定组件的新大小(该方法果实,建议用setBounds)
  add(whiteBoard); //把该组件添加到applet中
 }
 WhiteBoard whiteBoard;  //定义一个whiteBoard类
}
/*
 * 继承自Canvas 的组件类WhiteBoard, 表示屏幕上一个空白矩形区域,应用程序可以在该区域内绘图,或者可以从该区域捕获用户的输入事件。
 * 
 * 应用程序必须为 Canvas 类创建子类,以获得有用的功能(如创建自定义组件)。必须重写 paint 方法,以便在 canvas 上执行自定义图形。
 */
class WhiteBoard extends Canvas implements MouseMotionListener, MouseListener
{
 /*
  * 定义个宽度的常量
  */
 final static int DEFAULT_BOARDWIDTH = 700;
 /*
  * 定义个高的常量
  */
 final static int DEFAULT_BOARDHEIGHT = 400;
 
 int x0, y0, x1, y1;
/* 构造函数
 * 他会先调用Canvas类的无参的构造方法
 * @param WBApllet1
 */
 WhiteBoard(WBApplet WBApllet1)
 {
  parent = WBApllet1;    //WBApllet1参数是传入的父组件
  off_screen_buf = parent
    .createImage(DEFAULT_BOARDWIDTH, DEFAULT_BOARDHEIGHT);   //在父组件上穿件一块空白的区域,大小为常量
  off_screen_gc = off_screen_buf.getGraphics();
  addMouseMotionListener(this);      //用于监听鼠标点击动作,包括左键右键的监听器
  addMouseListener(this);         //用于监听鼠标移动的监听器
 }
/*
 * 一个同步的画线方法
 */
 synchronized public void update_buffer(Graphics g, DrawItem data)
 {
  g.drawLine(data.x0, data.y0, data.x1, data.y1);  //从x0  y0  画到  x1  y1
 }
 public void mouseMoved(MouseEvent e)
 {
 }
 public void mouseReleased(MouseEvent e)
 {
 }
 public void mouseEntered(MouseEvent e)
 {
 }
 public void mouseExited(MouseEvent e)
 {
 }
 public void mouseClicked(MouseEvent e)
 {
 }
 public void mouseDragged(MouseEvent e)
 {
  x1 = e.getX();            //获得鼠标拖动的坐标
  y1 = e.getY();
  Graphics g = getGraphics();
  update_buffer(g, new DrawItem(x0, y0, x1, y1));  //给update_buffer方法传入  一个图形对象,已经自己定义起点和终点的类
  update_buffer(off_screen_gc, new DrawItem(x0, y0, x1, y1));    //吧当前屏幕的图形对象传为参数传入update_buffer方法
  g.dispose();           //去除g对象
  x0 = x1;     //本次的 终点坐标为下次的起始坐标
  y0 = y1;
 }
 public void mousePressed(MouseEvent e)
 {
  x0 = e.getX();     //当鼠标点下,取得该点的位置
  y0 = e.getY();
 }
 public void paint(Graphics g)
 {
  copy_from_offscreen_buf(g);// 把这句话屏蔽掉,就不能恢复用户绘制的图形了
 }
 void copy_from_offscreen_buf(Graphics g)
 {
  if (g != null)
   g.drawImage(off_screen_buf, 0, 0, null);
 }
 private Image off_screen_buf;
 private Graphics off_screen_gc;
 WBApplet parent;
}
/*
 * 记录起始点与结束点的类
 */
class DrawItem
{
 DrawItem(int x0, int y0, int x1, int y1)
 {
  this.x0 = x0;
  this.y0 = y0;
  this.x1 = x1;
  this.y1 = y1;
 }
 int x0;
 int y0;
 int x1;
 int y1;
}2010-12-01
建议你找一份API 然后查相关方法,Griphics类里很多方法! 这一步必须要自己动手!2010-12-01
自己查看API,学习才有效率啊2010-12-02