Почему Timeline playFromStart работает только в первый раз? - PullRequest
0 голосов
/ 30 мая 2019

Итак, я делал программу на JavaFX, где я использую AnimationTimer. Мне нужно иметь возможность приостанавливать AnimationTimer всякий раз, когда я хочу, поэтому кто-то рекомендовал использовать временные шкалы на одном из моих других вопросов Stackoverflow. Однако кажется, что вы можете приостановить AnimationTimer только на определенное время один раз. Например, хотя следующий код должен приостановить AnimationTimer всего на 1 секунду в течение четырех равных интервалов, он приостанавливает его только один раз:

public Timeline createPauseTimerTimeline(AnimationTimer timer, Duration duration) {
    return new Timeline(
            new KeyFrame(Duration.ZERO, event -> timer.stop()),
            new KeyFrame(duration, event -> timer.start())
    );
}

// Inside some other method:
Timeline delay = createPauseTimerTimeline(timer, new Duration(250));
/* blah blah */
delay.playFromStart();
/* blah blah */
delay.playFromStart();
/* blah blah */
delay.playFromStart();
/* blah blah */
delay.playFromStart();
/* blah blah */

Как я могу исправить код, чтобы я мог приостановить AnimationTimer на определенное количество секунд, когда захочу? Любая помощь будет принята с благодарностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...