This week's book giveaway is in the Agile and other Processes forum. We're giving away four copies of The Mikado Method and have Ola Ellnestam and Daniel Brolund on-line! See this thread for details.
The following code animates an oval from the top left to the bottom right of an inner class extended from JPanel. It draws and runs just fine, but then, when I click the button to redo the animation, it doesn't redraw/animate the panel. What am I doing wrong? Is it a bug or can I just not do this? Please see my other topic as well, javax.sound.midi problems, as it hasn't recieved any attention yet. Thanks in advance for the help.
Michael Dunn
Ranch Hand
Joined: Jun 09, 2003
Posts: 4632
posted
0
never have this type of code in Swing
Thread.sleep(50);
there is only a single thread in swing, and by 'sleeping' it, you also prevent it from repainting.
notice, when you click the button, it stays clicked for some seconds?
there are a number of ways to do your animation, simplest is using a swing.Timer
Eric Larsen
Ranch Hand
Joined: Mar 28, 2009
Posts: 35
posted
0
Oh, ok thanks! I was trying to build on some sample code in Head First Java by adding a replay button to the animation, but I didn't know that the thread.sleep() would screw it up. Thank you again!
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to
run our stuff on 16 servers instead of 3.