自己写了一个,能在console里每次左击的点的坐标,但执行后,记事本click.txt中都是空的,前辈们帮我看看什么地方出问题了,太谢谢了import java.awt.Container;
import java.awt.Graphics;
import java.io.*;
import javax.swing.*;
import java.awt.event.*;
public class click extends JApplet
{
public void init()
{
try 
{
FileWriter fw=new FileWriter("click.txt");
final BufferedWriter bw=new BufferedWriter(fw);

Container cp = getContentPane(); 
Draw dr=new Draw();
cp.add(dr);

class MyListener extends MouseAdapter
{
public void mouseClicked(MouseEvent e)
{

String s1=Integer.toString(e.getX());
String s2=Integer.toString(e.getY());
try
{
bw.write(s1+","+s2);
bw.newLine();
}catch(IOException ie){System.out.println(ie);}

System.out.println("clicked!!!"+s1+","+s2);
}
}

MyListener ml=new MyListener();

dr.addMouseListener(ml);

}catch(IOException io){System.out.println(io);}
}
}class Draw extends JPanel
{
}

解决方案 »

  1.   

    public class click extends JApplet
    {
    public void init()
    {
    try 
    {
    FileWriter fw=new FileWriter("click.txt");
    final BufferedWriter bw=new BufferedWriter(fw);

    Container cp = getContentPane(); 
    Draw dr=new Draw();
    cp.add(dr);

    class MyListener extends MouseAdapter
    {
    public void mouseClicked(MouseEvent e)
    {

    String s1=Integer.toString(e.getX());
    String s2=Integer.toString(e.getY());
    try
    {
    bw.write(s1+","+s2);
    bw.newLine();
    bw.flush();
    }catch(IOException ie){System.out.println(ie);}

    System.out.println("clicked!!!"+s1+","+s2);
    }
    }

    MyListener ml=new MyListener();

    dr.addMouseListener(ml);

    }catch(IOException io){System.out.println(io);}
    }
    }class Draw extends JPanel
    {
    }楼主不小心,少了flush();