Java 如何启动摆动计时器?

Java 如何启动摆动计时器?,java,swing,if-statement,timer,actionlistener,Java,Swing,If Statement,Timer,Actionlistener,现在,每次我手动单击按钮时,对象都会移动一定的增量,但实际上,只要单击按钮,对象就会在屏幕上自行移动。我试着调用timer.start();在我的代码中多次出现。此外,在actionPerformed方法中设置一个“if”语句,检查按钮是否被按下,然后调用timer.start()作为结果。但是,它没有让物体自行移动 谁能把我引向正确的方向?我写的代码不对吗?或者这个问题与java swing定时器有关 另外,我对爪哇是新手 这是我代码的一部分: public void actionPerfo

现在,每次我手动单击按钮时,对象都会移动一定的增量,但实际上,只要单击按钮,对象就会在屏幕上自行移动。我试着调用timer.start();在我的代码中多次出现。此外,在actionPerformed方法中设置一个“if”语句,检查按钮是否被按下,然后调用timer.start()作为结果。但是,它没有让物体自行移动

谁能把我引向正确的方向?我写的代码不对吗?或者这个问题与java swing定时器有关

另外,我对爪哇是新手

这是我代码的一部分:

 public void actionPerformed(ActionEvent e){

    if (e.getSource() == rightBtn) {    
        objXpos += objMoveIncrement;
        direction.equals("Right");

    }
    if (e.getSource() == leftBtn) {
        direction.equals("Left");
        objXpos -= objMoveIncrement;
    }

    repaint();
} } **编辑 计时器假设在单击按钮后启动,计时器允许对象在屏幕上移动

这个问题与java swing计时器有关

没有

我写的代码不对吗

这就是问题所在

计时器应该在单击按钮后启动

计时器是如何停止的?如果单击“右键”然后单击“下键”,会发生什么情况

如果不知道确切的要求,就很难给出确切的解决方案

因此,我建议一种解决方案是在程序启动时启动计时器

然后在每个按钮的ActionListener中,更改方向

然后,当调用计时器的ActionListner时,只需根据当前方向移动对象,然后重新绘制对象


通常,您会使用
键绑定来实现类似的功能。因此,当你按下一个键时,你启动计时器,当你松开键时,你停止计时器。查看带有键绑定的
运动
示例,了解此方法的工作示例。

是否可以添加更多的代码?你用定时器做了什么?