modstyle
Mitglied
heyho leudde !
seit einigen tagen versuche ich nun ein wahrscheinlich sehr banales problem anzugehen, ich komme jedoch nicht auf den fehler ...
mit folgenden zeilen rufe ich die prozedur auf, die das applet kurzzeitig anhalten soll:
farbe = "orange";
repaint();
sleep(1000); <------ !!!
formular(3);
farbe = "rot";
repaint();
die prozedur, die das applet anhält:
public void sleep(int pause)
{ // kleine Pause
try
{
Thread.sleep(pause);
}
catch (InterruptedException e) {}
}
dabei wird ein orange-farbener kreis gezeichnet und dann der ablauf für 1 sec. angehalten, um dann einen roten kreis zu zeichnen ...
das problem: er zeichnet den orange-farbenen kreis nicht vor der pause ... zunächst hält das applet für die angegebene zeit an und dann wird der organe-farbene kreis gezeichnet und direkt danach der rote, also bemerkt man den orangenen überhaupt nicht ...
das komische an der sache: ersetze ich in der prozedur "sleep" Thread.sleep durch wait also: wait(pause); so wird der orange-farbene Kreis gezeichnet aber das Applet nach der vorgegebenen Zeit nicht fortgesetzt d.h. der rote Kreis nicht gezeichnet ! ... eigentlich müsste jedoch beides zum selben ergebnis führen, oder nicht ?!?!?! ...
wenn einer eine idee hat dieses problem zu lösen oder einen anderen weg weiss eine anwendung für eine variable zeit kurz anzuhalten und dann fortzuführen ohne threads, wäre ich für die hilfe sehr dankbar ! ... thx schonma im voraus ...
mfg
modstyle
seit einigen tagen versuche ich nun ein wahrscheinlich sehr banales problem anzugehen, ich komme jedoch nicht auf den fehler ...
mit folgenden zeilen rufe ich die prozedur auf, die das applet kurzzeitig anhalten soll:
farbe = "orange";
repaint();
sleep(1000); <------ !!!
formular(3);
farbe = "rot";
repaint();
die prozedur, die das applet anhält:
public void sleep(int pause)
{ // kleine Pause
try
{
Thread.sleep(pause);
}
catch (InterruptedException e) {}
}
dabei wird ein orange-farbener kreis gezeichnet und dann der ablauf für 1 sec. angehalten, um dann einen roten kreis zu zeichnen ...
das problem: er zeichnet den orange-farbenen kreis nicht vor der pause ... zunächst hält das applet für die angegebene zeit an und dann wird der organe-farbene kreis gezeichnet und direkt danach der rote, also bemerkt man den orangenen überhaupt nicht ...
das komische an der sache: ersetze ich in der prozedur "sleep" Thread.sleep durch wait also: wait(pause); so wird der orange-farbene Kreis gezeichnet aber das Applet nach der vorgegebenen Zeit nicht fortgesetzt d.h. der rote Kreis nicht gezeichnet ! ... eigentlich müsste jedoch beides zum selben ergebnis führen, oder nicht ?!?!?! ...
wenn einer eine idee hat dieses problem zu lösen oder einen anderen weg weiss eine anwendung für eine variable zeit kurz anzuhalten und dann fortzuführen ohne threads, wäre ich für die hilfe sehr dankbar ! ... thx schonma im voraus ...
mfg
modstyle
Zuletzt bearbeitet: