62,621
社区成员
发帖
与我相关
我的任务
分享
import java.awt.Color;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Point;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.ArrayList;
import java.util.Iterator;
public class MouseTest {
public static void main(String[] args){
new MyFrame("drawing points");
}
}
class MyFrame extends Frame{
ArrayList<Point> points = null;// ArrayList(int initialCapacity) 构造一个具有指定初始容量的空列表
MyFrame(String s){
super(s);
points = new ArrayList();
setLayout(null);
this.setBackground(new Color(200,200,200));
this.addMouseListener(new Monitor());
this.setBounds(300,300,400,300);
this.setVisible(true);
}
public void paint(Graphics g){
Iterator<Point> l = points.iterator();
while(l.hasNext()){
Point p = (Point) l.next();
g.setColor(Color.blue);
g.fillOval(p.x,p.y,10,20);
}
}
public void addPoint(Point p){
points.add(p);
}
}
class Monitor extends MouseAdapter{
public void mousePressed(MouseEvent e){
MyFrame f = (MyFrame) e.getSource();
f.addPoint(new Point(e.getX(),e.getY()));
f.repaint();
}
}