java不知错误原因?

hh81658388 2009-04-03 06:40:09
我写了个鼠标画图的程序,能通过编译,但运行出错,不知是什么原因,希望高手指点!兄弟我先谢了!
代码如下:

import java.awt.Frame;
import java.awt.Button;
import java.awt.BorderLayout;
import java.awt.Color;
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Container;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.awt.event.WindowAdapter;
public class FrameTest //implements MouseListener
{
static int xPoit;
static int yPoit;

public static void main(String[] args)
{

Frame f=new Frame("实例窗口");
f.setSize(600,400);
f.setLocation(100,100);
f.setVisible(true);
f.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent emp)
{
xPoit=emp.getX();
yPoit=emp.getY();
System.out.println("按下");
}

public void mouseReleased(MouseEvent e)
{
Container app=new Container();
Graphics g=app.getGraphics();
System.out.println("拖动显示1");
g.drawOval(xPoit,yPoit,e.getX()-xPoit,e.getY()-yPoit);
System.out.println("拖动显示2");
}
});

f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}

});

}

}
...全文
122 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanyuanwaifdl 2009-04-08
  • 打赏
  • 举报
回复
Graphics 引用不对, 

import java.awt.Frame;
import java.awt.Button;
import java.awt.BorderLayout;
import java.awt.Color;
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.awt.event.WindowAdapter;

public class FrameTest //implements MouseListener
{
static int xPoit;
static int yPoit;
static Graphics gh;
public static void main(String[] args)
{

Frame f=new Frame("实例窗口");
f.setSize(600,400);
f.setLocation(100,100);
f.setVisible(true);
gh=f.getGraphics();
f.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent emp)
{
xPoit=emp.getX();
yPoit=emp.getY();
System.out.println("按下");
}

public void mouseReleased(MouseEvent e)
{

System.out.println("拖动显示1");
gh.drawOval(xPoit,yPoit,e.getX()-xPoit,e.getY()-yPoit);
System.out.println("拖动显示2");
}
});

f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}

});

}

}
yangfeitarena 2009-04-05
  • 打赏
  • 举报
回复
代码要放在代码区,这么写一点格式没有,看得太费劲,没谁愿意给你分析
wxzyydy 2009-04-04
  • 打赏
  • 举报
回复
错误太多了,不想查了
hh81658388 2009-04-04
  • 打赏
  • 举报
回复
错误找到了!谢了,各位,
Graphics 引用不对,

import java.awt.Frame;
import java.awt.Button;
import java.awt.BorderLayout;
import java.awt.Color;
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.awt.event.WindowAdapter;

public class FrameTest //implements MouseListener
{
static int xPoit;
static int yPoit;
static Graphics gh;
public static void main(String[] args)
{

Frame f=new Frame("实例窗口");
f.setSize(600,400);
f.setLocation(100,100);
f.setVisible(true);
gh=f.getGraphics();
f.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent emp)
{
xPoit=emp.getX();
yPoit=emp.getY();
System.out.println("按下");
}

public void mouseReleased(MouseEvent e)
{

System.out.println("拖动显示1");
gh.drawOval(xPoit,yPoit,e.getX()-xPoit,e.getY()-yPoit);
System.out.println("拖动显示2");
}
});

f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}

});

}

}
hh81658388 2009-04-04
  • 打赏
  • 举报
回复
我测试了一下,错误发生在
g.drawOval(xPoit, yPoit, e.getX() - xPoit, e.getY() - yPoit); 这句,
真搞不明白,这句怎么错了呢?这个方法中的各个参数都有值的,可以输出来啊,不好意思啊,本人刚学习,让大家见笑!
下面的那句没有执行。
hh81658388 2009-04-04
  • 打赏
  • 举报
回复
请教3楼兄,按照原来代码的结构,错误在哪里呢?
先谢了!
hh81658388 2009-04-03
  • 打赏
  • 举报
回复
谢谢楼上兄弟!
aqiansunboy 2009-04-03
  • 打赏
  • 举报
回复
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowAdapter;

public class FrameTest extends Frame// implements MouseListener
{
static int xPoit;

static int yPoit;

static Graphics g;

public FrameTest() {

Frame f = new Frame("实例窗口");
f.setSize(600, 400);
f.setLocation(100, 100);
f.setVisible(true);

g = f.getGraphics();

MouseAdapter1 adapter = new MouseAdapter1();
f.addMouseListener(adapter);
}

public static void main(String[] args) {

new FrameTest();

}

class MouseAdapter1 extends MouseAdapter {
public void mousePressed(MouseEvent emp) {
xPoit = emp.getX();
yPoit = emp.getY();
System.out.println("按下");
}

public void mouseReleased(MouseEvent e) {
System.out.println("拖动显示1");
g.drawOval(xPoit, yPoit, e.getX() - xPoit, e.getY() - yPoit);
System.out.println("拖动显示2");
}
}

}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧