Listing 2
1. public void paint(Graphics g) {
2. if (!running) {
3. return;
4. }
5.
6. g.setColor(randRange(255), randRange(255), randRange(255));
7.
8. triangle[0] = randRange(w);
9. triangle[1] = randRange(h);
10. triangle[2] = randRange(w);
11. triangle[3] = randRange(h);
12. triangle[4] = randRange(w);
13. triangle[5] = randRange(h);
14.
15. drawPoly(triangle,6,g);
16.
17. }
Listing 3
1. private final int randRange(int n) {
2. int r = random.nextInt() % n;
3. if (r < 0) {
4. r += n;
5. }
6. return r;
7. }
8.
9.
10. private final void drawPoly(int coords[], int numcoords, Graphics g) {
11.
12. ...
13.
14. }
Listing 4
1. public void run() {
2. int n = 0;
3.
4. stopped = false;
5.
6. while (!stopped) {
7. now = System.currentTimeMillis();
8. if (nextTime < now + 15)
9. nextTime = now + 15;
10. try {
11. runner.sleep(nextTime - now);
12. }
13. catch(Exception e){}
14. nextTime = System.currentTimeMillis() + 50;
15.
16. screen.repaint();
17.
18. }
19. }