Timeout1: Canvas.java

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;

public class Canvas extends JPanel {
    private Main parent; //*1 Saves pointer to parent

    public Canvas (Main parent) {
	this.parent = parent; //*1
    }

    public void paintComponent (Graphics g) { //*2 Redraws circle for current frame number
	super.paintComponent(g);
	g.drawOval ( //*2
		// Moves by 2 pixels on each frame
		10 + 2 * parent.getFrameNumber(), //*3 Call parent to find current frame number
		10 + 2 * parent.getFrameNumber(), //*3
		// size
		100, 100);
    }
}
[download file]