窗口画点的问题程序
看了马士兵老师的视频,做的程序。总是报错。说Point构造函数有问题
这个程序是在Frame窗口上用鼠标画点的小程序,帮忙看看问题在哪?
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class MyMouseAdapter { //主函数
public static void main(String args[]) {
new MouseFrame("Drawing!");
}
}
class MouseFrame extends Frame { //MouseFrame继承Frame,构建窗口
ArrayList points = null;
MouseFrame(String s) {
super(s);
points = new ArrayList();
setLayout(null);
setBounds(300,300,400,300);
this.setBackground(new Color(204,204,255));
setVisible(true);
addMouseListener(new MouseMonitor());
}
public void paint(Graphics g) { //画点paint方法的重写
Iterator i = points.iterator();
while(i.hasNext()) {
Point p = (Point)i.next();
g.setColor(Color.BLUE);
g.fillOval(p.x,p.y,10,10);
}
}
public void addPoint(Point p) { //新增点的坐标方法addPoint
points.add(p);
}
}
class MouseMonitor extends MouseAdapter { MouseMonitor 继承 MouseAdpter,并且重写了mousePressed鼠标按钮的方法
public void mousePressed(MouseEvent e) {
MouseFrame m = (MouseFrame)e.getSource();
m.addPoint(new Point(e.getX(),e.getY()));
m.repaint();
}
}