Hallo zusammen,
ich habe eine Frage dazu, wie ich mein Programm an bestimmten Stellen zögern lassen kann.
Mein Programm zeigt ein Array of Buttons, durch das ein Buchstabenrätsel dargestellt wird. Es soll abwechselnd der User und der PC ein Wort anzeigen. Das klappt auch soweit gut, aber die Wahrnehmung der Wörter soll möglichst gleich sein. Momentan klickt der User die Buchstaben des Wortes nacheinander an, während der PC das Wort quasi "komplett hinklatscht". Der PC zeigt das Wort durch folgende Schleife an:
Der Timer verzögert das weitere Ausführen der Schleife dabei leider nicht, sondern macht sein Ding einfach nach der Wartezeit unabhängig von der Anzeige des Wortes im Rätsel.
Wie ihr seht, habe ich auch schon Thread.sleep versucht. Das führt aber nur dazu, dass das Programm die Zeit wartet, bevor es mit der Wortanzeige beginnt.
Könnt ihr mir hier weiterhelfen?? Was habe ich beim Timer/Thread falsch gemacht?
Vielen Dank schonmal!
Liebe Grüße,
Julchen
ich habe eine Frage dazu, wie ich mein Programm an bestimmten Stellen zögern lassen kann.
Mein Programm zeigt ein Array of Buttons, durch das ein Buchstabenrätsel dargestellt wird. Es soll abwechselnd der User und der PC ein Wort anzeigen. Das klappt auch soweit gut, aber die Wahrnehmung der Wörter soll möglichst gleich sein. Momentan klickt der User die Buchstaben des Wortes nacheinander an, während der PC das Wort quasi "komplett hinklatscht". Der PC zeigt das Wort durch folgende Schleife an:
Code:
for (int j=0; j<anzB; j++)
//anzB ist die Anzahl der Buchstaben, die das Wort hat,
//das Wort wurde vorher aus einem Array in pos eingelesen
{
a =Integer.parseInt(String.valueOf(pos.charAt(c)));
b =Integer.parseInt(String.valueOf(pos.charAt(d)));
QB[a][b].setBackground(Color.red);
c=c+2;
d=d+2;
timer.schedule(new Turn(), 1000);
/*try
{
Thread.sleep(1000);
}
catch ( InterruptedException e ) { }*/
}
Der Timer verzögert das weitere Ausführen der Schleife dabei leider nicht, sondern macht sein Ding einfach nach der Wartezeit unabhängig von der Anzeige des Wortes im Rätsel.
Wie ihr seht, habe ich auch schon Thread.sleep versucht. Das führt aber nur dazu, dass das Programm die Zeit wartet, bevor es mit der Wortanzeige beginnt.
Könnt ihr mir hier weiterhelfen?? Was habe ich beim Timer/Thread falsch gemacht?
Vielen Dank schonmal!
Liebe Grüße,
Julchen