import java.awt.*;
import java.util.Enumeration;
import java.util.Vector;
import javax.swing.*;
public class DrawLine extends Frame
{
Vector v=new Vector();
public void paint(Graphics g) //重画线
{
g.setColor(Color.RED);
for(Enumeration en=v.elements();en.hasMoreElements();) //用数组记录画线
{
MyLine m=(MyLine)en.nextElement();
m.drawMe(g);
}
}
public void init()
{
setSize(300,300);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
addMouseListener
(
new MouseAdapter()
{
int start_x,start_y ;
public void mousePressed(MouseEvent e)
{
start_x=e.getX();
start_y=e.getY();
}
/* public void mouseReleased(MouseEvent e)
{
x2=e.getX();
y2=e.getY();
Graphics g=e.getComponent().getGraphics();
g.setColor(Color.RED);
g.drawLine(x1,y1,x2,y2);
v.add(new MyLine(x1,x2,y1,y2));
}
);
}
*/
}
);
addMouseMotionListener(
new MouseMotionAdapter()
{
int end_x,end_y;
pubic void mousedragged(mouseEvent e)
{
end_x=e.getX();
end_y=e.getY();
Graphics g=e.getComponent().getGraphics();
g.setColor(Color.RED);
g.drawLine(start_x,start_y,end_x,end_y);
v.add(new MyLine(start_x,start_y,end_x,end_y));
}
}
) ;
}
public static void main(String[]args)
{
DrawLine dl=new DrawLine();
dl.init();
}
}