// Stand: 07.11.2010

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

// import javax.swing.Timer

import java.awt.BorderLayout;

// Test für einen Timer (Animator) mit System.out.println

public class Timer1 extends JFrame implements ActionListener {

	Timer myTimer;  // Timer
  long summe = 0;


  public static void delay(long time) {
    long t1;
    t1 =  System.currentTimeMillis()+time;
    while ( System.currentTimeMillis() < t1) {
    }
  }  // delay


   // Konstruktor
  public Timer1 () {
    setSize(400, 300);  // Breite Höhe
    setLocation(300,300);
    setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
    setGUI();
  }

   private void setGUI() {
    setTitle("Timertest");  // Titel
    myTimer = null;  // Null setzen
    startLoading();  // init und start des Timers
  }


     // init und Start des Timers animator
    public void startLoading() {
         // Sicherheitsbafrage
        if(myTimer == null) {
          myTimer = new Timer(1000, this); // 200 ms
          myTimer.start();  // starten
        }
    } // startLoading


      // Beendet den Timer und das gesamte Progamm !
    public void stopLoading() {
        // Sicherheitsabfrage
      if(myTimer != null) {
	      myTimer.stop();  //
 	      myTimer = null;  // Anfangszustand
          System.exit(0);  // Beenden
    	}
    }  // stopLoading


      // wird vom Timer aufgerufen
	public void actionPerformed(ActionEvent e) {
      summe += 1;
      System.out.println(summe);
      if (summe>30) {
        stopLoading();
      }
	}  // actionperformed


  public static void main(String[] args) {
    Timer1 timer;
    timer =  new Timer1();
    timer.setVisible(true);
  }  // main


}  // Timer1

