Отменить timertask javafx

Я использую этот код для выполнения действия через 10 секунд:

    public void seconds() {
            timer.schedule(new TimerTask() {
            public void run() {
                 Platform.runLater(new Runnable() {
                    public void run() {
                            panebuttons.setVisible(true);
                            timer.cancel();
                         }
                });
            }
        },10000, 100); //10000 = 10 seconds to show the buttons

    }

Это пример:

Timer timer= new java.util.Timer();

Мне нужно остановить таймер в любой момент. Если я остановлю таймер во время работы, все в порядке, но если я нажму кнопку с timer.cancel (); строка, после того, как таймер закончится, я получаю исключение.

Вызвано: java.lang.IllegalStateException: таймер уже отменен.

исключение правильное !!. таймер был отменен через десять секунд. Но если я хочу показать кнопки до того, как таймер достигнет десяти секунд?

Любая идея ??

Заранее спасибо :).

Отключить кнопку в TimerTask?

James_D 24.04.2018 01:46

В программе есть панель с кнопками, одна из этих кнопок делает панель невидимой для просмотра других параметров. Если ничего не происходит, панель с кнопками снова отображается через десять секунд. Если я не хочу ждать десять секунд, чтобы увидеть "Основные" кнопки Я нажимаю кнопку «назад» и снова показываю. Мне нужно, чтобы таймер запускался каждый раз, когда пользователь нажимает кнопку «показать».

Yolfran Montaño Corredor 24.04.2018 02:09
Знайте свои исключения!
Знайте свои исключения!
В Java исключение - это событие, возникающее во время выполнения программы, которое нарушает нормальный ход выполнения инструкций программы. Когда...
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
0
2
368
0

Другие вопросы по теме