2016-09-02 4 views
0

Hallo Leute, ich habe dieses Problem des Hinzufügens eines Timers zwischen den Animationen, das Problem mit meinem Code ist, dass die letzte Animation eine ausreichende Zeit warten muss, um die vorherigen Animationen zu beenden , der Code istHinzufügen eines Timers zwischen Animationen in Java

if (array1[0]>array1[1]) 
    { 
    AnimationClass a = new AnimationClass(); 
    a.jButtonYUp(110, 30, 100,1, jButton6); 
    a.jButtonXLeft(250, 50, 100, 1, jButton6); 
    a.jButtonXRight(50, 250, 100, 1, jButton5); 

    // I need the timer here about 2 seconds 

    a.jButtonYDown(30, 110, 100, 1, jButton2); 

    }  

So würde ich sehr dankbar, wenn mir jemand auf die Frage, ob seine bereits dort direkt könnte oder dies für mich beantworten

BTW, dass AnimationClass eine Bibliothek von einer Ihnen Knolle entwickelt ist und Ich befolge derzeit seine Tutorials

Antwort

0
if (array1[0]>array1[1]) 
    { 
    AnimationClass a = new AnimationClass(); 
    a.jButtonYUp(110, 30, 100,1, jButton6); 
    a.jButtonXLeft(250, 50, 100, 1, jButton6); 
    a.jButtonXRight(50, 250, 100, 1, jButton5); 

    Timer timer1 = new Timer(); 
    MyTimerTask timer1_task = new MyTimerTask(); 
    timer1.schedule (timer1_task, 2000, 0); 

    } 



class MyTimerTask extends TimerTask 
{ 
    public void run() 
    { 
    a.jButtonYDown(30, 110, 100, 1, jButton2); 
    } 
} 
+0

Ich denke, das ein wenig Überarbeitung braucht da 'a' zum' if' scoped ist. – ChiefTwoPencils

+0

genau das, was ich gesucht habe –

-1

Sie können Thread.sleep() verwenden, um die Ausführung zu verzögern.

if (array1[0]>array1[1]) 
    { 
    AnimationClass a = new AnimationClass(); 
    a.jButtonYUp(110, 30, 100,1, jButton6); 
    a.jButtonXLeft(250, 50, 100, 1, jButton6); 
    a.jButtonXRight(50, 250, 100, 1, jButton5); 

    try 
    { 
     Thread.sleep(2 * 1000); // 2 seconds 
    } catch (InterruptedException e) 
    { 
     e.printStackTrace(); 
    } 

    a.jButtonYDown(30, 110, 100, 1, jButton2); 

    } 
Verwandte Themen