Я создаю свинг-приложение. В какой-то момент мне нужно запустить «анимацию»:
...
jpanel1.setBackground(Color.Black);
Delay(milli)
jpanel1.setBackground(Color.White);
...
и т. Д.
Сам графический интерфейс и вся логика, лежащая в его основе, работают. Только в этот раз изменение цвета зависит от того, чего нет. Я читал, что Swing не является потокобезопасным, но все примеры, которые я нашел, показали мне, как запустить другой поток (например, в фоновом режиме), но никогда, как остановить текущий поток Swing-GUI.
Edit:
Приложение должно работать следующим образом:
- файлы конфигурации читаются, jframe настроен.
- задаются некоторые простые вопросы
- открывается диалог, объясняющий анимацию.
- после того, как пользователь нажал «ок», анимация - мигание некоторых цветов - запускается. цвет и задержка между сменой цвета зависят от конфигурации
- открывается другой диалог, и программа продолжается -> новая jpanel внутри jframe, кнопки и т. Д.
онлайн, которая не работает, это задержки между сменой цвета. Теперь я понимаю, почему это не работает, и я пытаюсь создать таймер, который активирует список действий, который затем меняет цвет и останавливает таймер ... просто кажется, что так много работы для простой задержки ... и у меня есть реорганизовать всю анимацию в приложении.