[JavaApp] Countdown

Also wir sollen inner Schule nen Simplen Countdown basteln, aber wir bekommen das einfach net hin das er runter zählt >.<

Hier unsere MouseReleased Funktion:
Code:
public void mouseReleased(MouseEvent e)
	{
		if(e.getSource()==plus){
			zahl+=1;
			zeit.setText(""+zahl);}
		if(e.getSource()==minus){
			zahl-=1;
			zeit.setText(""+zahl);}
		if(e.getSource()==start){
			for(i=zahl;i<=0;i--){
				sleep(1000);
				zahl=i;
				zeit.setText(""+zahl);}
			plus.setVisible(false);
			minus.setVisible(false);
			info.setText("Bombe wurde gezündet!");
			info.setEditable(false);
			info.setBackground(Color.red);}
		if(e.getSource()==stop){
			plus.setVisible(true);
			minus.setVisible(true);
			info.setText("Bombe wurde entschärft!");
			info.setEditable(false);
			info.setBackground(Color.green);}	
	}
 
for(i=zahl;i<=0;i--){

d.h., solange die zahl kleiner / gleich 0 ist (also negativ), wird bei jedem schleifendurchlauf 1 abgezogen.
wenn die zahl positiv ist, dann kommt man da garnicht in die schleife (i<=0 ist false)
wenn die zahl negativ ist, dann zählt der bis zur unteren grenze des datentyps ("unendlich").

btw, zählervariablen werden normalerweise IN der schleife deklariert, damit sie eben auch nur lokal in der schleife existieren. (z.b. for(int i=zahl;i<=0;i--), man beachte das int dadrin).
 
Da musst du nen Thread basteln, der nacj jedem i--; 1 Sek. wartet:

Code:
public  class Foo  implements Runnable {
    private int i = 10000;


   public void run() {
         i--;
         try {
                Thread.sleep(1000);     // 1000 ms warten
         } catch(InterruptedException ex) {
                //IGNORE
         }
   }


}

ein Foo#start() lässt den Countdown dann beginnen.
 
Zurück
Oben