public class huayuan extends JFrame implements MouseListener
{
public static void main(String [] args)
{
huayuan yuan2=new huayuan();
}
public huayuan ()
{
this.setSize(400,400);
this.setVisible(true);
this.addMouseListener(this);
}
public void firststep(Graphics g)
{
super.paint(g);
g.drawLine(0, 200, 400, 200);
g.drawLine(200, 0, 200, 400);
g.drawOval(140, 140, 120, 120);
}
public void mouseClicked(MouseEvent arg0)
{
int a=arg0.MOUSE_CLICKED;
System.out.println(a);
if(a!=0)
{
}
}
public void mouseEntered(MouseEvent arg0)
{}
public void mouseExited(MouseEvent arg0)
{}
public void mousePressed(MouseEvent arg0)
{}
public void mouseReleased(MouseEvent arg0)
{}
}
我想在mouseclicked里面的if函数里,调用firststep函数,让他把图画出来,但是graphics g传不进去。应该怎么写?
------解决思路----------------------
有此想法绝对错误,估计你还是学生!
Graphic/Graphic2D作为JAVA中图形设备上下文对象,其获取方式只能通过
重载paint/paintComponent等绘制方法获取,或者通过BufferedImage对象获得
你可以通过repaint来刷新显示,然后在paint/paintCompoent中加上你想要绘制的内容即可
在鼠标事件中调用repaint即可,