读书人

关于画线有关问题

发布时间: 2012-01-03 22:16:06 作者: rapoo

关于画线问题
这个程序的 "orgX=e.getX() "和 "orgY=e.getY() "这两个坐标的值为什么是0,0能
import java.awt.*;
import java.awt.event.*;
public class DrawLine
{
Frame f=new Frame( "DrawLine ");
public static void main(String[] args)
{
new DrawLine().init();
}
public void init()
{
f.setBounds(100,100,500,350);
f.setVisible(true);
f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
f.addMouseListener(new MouseAdapter()
{
int orgX;
int orgY;
public void mousePressd(MouseEvent e)


{
orgX=e.getX();
orgY=e.getY();
}
public void mouseReleased(MouseEvent e)
{
Graphics g=f.getGraphics();
g.setColor(Color.red);
g.setFont(new Font( "隶书 ",/*Font.ITALIC|*/Font.BOLD,20));
//设置文本字体
g.drawString(new String(orgX+ ", "+orgY),orgX,orgY);
//打印鼠标按下时的坐标文本


g.drawString(new String(e.getX()+ ", "+e.getY()),e.getX(),e.getY());
//打印鼠标释放时的坐标文本
g.drawLine(orgX,orgY,e.getX(),e.getY());
System.out.println(orgX);
System.out.println(orgY);
}
});
}
}


[解决办法]
mousePressd应该是mousePressed
[解决办法]
其实你的程序是可以的!
对于 "orgX=e.getX() "和 "orgY=e.getY() " 是为零,只是因为你不够细心而已!
具体表示在下面那句:
"public void mousePressd(MouseEvent e) " 的 方法名写错了(少了一个 "e "),把它改成 "mousePressed " 就可以!
下次注意一点就可以!
其实我也在你这学到东西咯!

读书人网 >J2SE开发

热点推荐