import javax.swing.*; import java.awt.*; import java.util.*; public class FirstAnimation { private static final int X_SIZE = 300, Y_SIZE = 300; private static int x=150,y=150; // the item being animated public static void main(String[ ] args) { JFrame frame = new JFrame("Graphics Skeleton"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(X_SIZE, Y_SIZE); GraphicsPanel panel = new GraphicsPanel( ); frame.add(panel); frame.setVisible(true); Random g=new Random(); long i; while(true) { x+=g.nextInt(7)-3; y+=g.nextInt(7)-3; panel.repaint(); for(i=0;i<250000000l;i++); } } private static class GraphicsPanel extends JPanel { public void paintComponent(Graphics g) { super.paintComponent(g); g.setColor(Color.black); g.fillRect(0,0,X_SIZE,Y_SIZE); g.setColor(Color.red); if(x<25) x=25; else if(x>275) x=275; if(y<25) y=25; else if(y>275) y=275; g.fillOval(x-2,y-2,5,5); } } }