在这个程序中,我们应该点击一个表示“开始”的按钮,然后动画将在屏幕上开始运行。点击“开始”后,该按钮将变为“暂停”按钮,如果您点击该按钮,则会停止动画,并出现“恢复”按钮。我不知道如何将所有这三个操作都放到一个按钮中。这里是我到目前为止的代码:JButton中的多个操作
JButton button = new JButton("Start");
button.addActionListener(new
ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Timer t = new Timer(100, new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
shape.translate(x, y);
label.repaint();
}
});
t.start();
}
});
我知道这是不对的。当我运行该程序时,动画处于空闲状态,直到我点击“开始”,这是正确的,但每当我再次点击该按钮时,动画加速就不正确。我如何着手为按钮添加不同的操作?
例如,在动画运行后,我希望“暂停”按钮在单击时停止定时器,然后在点击“恢复”时恢复定时器。我现在的代码每次点击它时都会创建一个新的Timer对象,但这似乎是我得到它的唯一方法。如果我在ActionListener之外放置任何东西,我会遇到范围错误。有什么建议么?
非常感谢!这固定了它。我知道我每次创建一个新的Timer都不是我想要的。我从来没有想过把计时器放在我的私人实例变量中。 – GenericUser01