I was trying to answer a question related to moving a ball across the screen while changing its color over time, however I came through a weird bug, (most probably in my code) a
The issue is that you are inadvertently overriding the getX()
method defined in JComponent
in your BallPane
class.
As a result the x coordinate of the the JPanel
whenever accessed by getX()
is also changing as getX()
now returns your field x
which is defining how the ball moves and thus resulting in this behavior. You should either remove the method getX()
from BallPane
or rename it.