У меня есть 6 объектов в графическом интерфейсе класса, которые перемещаются по коду:
Anim anim = new Anim();
Timer timer = new Timer();
timer.scheduleAtFixedRate(anim, 30, 30);
Когда объект подходит к точке, я хочу его остановить. В классе Аним я делаю:
public class Anim extends TimerTask {
@Override
public void run() {
if (t1.x == 300 && t1.y == 300) {
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Он останавливает приложение, а я хочу задержаться на конкретном объекте. Как это сделать?
ИЗМЕНИТЬ:
Ок, теперь работает хорошо, другим объектам не мешает. Но объект движется дальше и через 1 секунду возвращается в исходное положение. Я хочу, чтобы он все время был в одном и том же положении, когда спал.
if (Main.auto1.x == 700 && Main.auto1.y == 350) {
timer = new javax.swing.Timer(1000, new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
Main.auto1.x = 700;
Main.auto1.y = 350;
}
});
timer.setRepeats(false);
timer.start();