I am building a swing application. At some point, I have to start an "animation":

```
...
jpanel1.setBackground(Color.Black);

Delay(milli)   

jpanel1.setBackground(Color.White);
...

```

and so on.

The gui itself and all the logic behind it work.It is just this time depended color-changing that does not. I have read, that swing is not thread safe, but all the examples I found showed me how to start another thread (for example in the background) but never how to stop the current swing-gui thread.

**Edit:**

The application should work as following:

1. configuration files are read, jframe is set up.
2. some simple questions are beeing asked
3. a dialogue is opened, which explains the animation.
4. after the user clicked "ok" the animation - some color flashing - is started. the color and the delay between the color-changing is depended on the configuration
5. another dialogue is opened and the programm continues -> new jpanel inside the jframe, buttons and so on.

the online thing that does not work are the delays between the color-changing. I understand now why it does not work and I am trying to build a timer, which activates a actionlister, which then changes the color and stops the timer... it just seems so much work for a simple delay... and I have to reorganize the entire animation in the application.