Java 动画-鼠标侦听器的不规则工作

Java 动画-鼠标侦听器的不规则工作,java,animation,refresh,mouselistener,Java,Animation,Refresh,Mouselistener,在我的动画中,一个元素是移动椭圆。有两种方法可以控制它。第一种是通过鼠标侦听器设置x、y位置,第二种是按键侦听器。在第一次使用动画时,两种方法都有效。但在使用停止(清除)按钮后,鼠标侦听器不起作用,但键方法仍然有效 代码停止方法: void clear() { waves.clear(); xz_list.clear(); yz_list.clear(); time_list.clear(); f_list.cle

在我的动画中,一个元素是移动椭圆。有两种方法可以控制它。第一种是通过鼠标侦听器设置x、y位置,第二种是按键侦听器。在第一次使用动画时,两种方法都有效。但在使用停止(清除)按钮后,鼠标侦听器不起作用,但键方法仍然有效

代码停止方法:

 void clear() {
        waves.clear();
        xz_list.clear();
        yz_list.clear();
        time_list.clear();
        f_list.clear();
        time=0;
        timer.stop();
        repaint();
    }
MouseListener方法:

void SourcePosition(double v, String d) {       
        addMouseListener(new MouseAdapter() {       
            public void mousePressed(MouseEvent e) {
                {
                    x_o = e.getX();
                    y_o = e.getY(); 
                    repaint();        

                }                   
            }                     
        });
    }

通常这是显示多普勒效应的应用。开始按钮从界面生成设置数据,禁用界面并启动动画和图表。Stop按钮使用clear()方法和enable接口。

一个runnable示例会更有用,因为我有一个带接口的应用程序。timer.ActionListener负责动画。发送它?我认为问题在于按按钮重新启动动画。我编辑了我的帖子,添加了启动/停止方法的代码。