日期:2014-05-20  浏览次数:20767 次

关于java画直线
import   java.awt.*;
import   java.awt.event.*;

class   GfxTest   extends   MouseAdapter{
        int   x1,x2,y1,y2;
        Frame   f=new   Frame();
       
        public   static   void   main(String[]   args)   {
                new   GfxTest().a();
        }

        public   void   a(){
                f.setSize(300,   300);
                f.setVisible(true);
                f.addMouseListener(new   GfxTest());
        }
       
        public   void   mousePressed(MouseEvent   e){
                x1=e.getX();
                y1=e.getY();
        }
       
        public   void   mouseReleased(MouseEvent   e){
                x2=e.getX();
                y2=e.getY();
                f.getGraphics().drawLine(x1,   y1,   x2,   y2);
        }
}
请问大家这段代码可以编译通过,但是运行后画直线就报错了,为什么?

------解决方案--------------------
public void a(){
f.setSize(300, 300);
f.setVisible(true);
f.addMouseListener(this);//改成this
}