#1 5. Juni 2007 Java Schleife anhalten bis alles aussgeführt ist Code: for(int i=0; i<schritte;i++) { left = c_mx - xside*zoomkonstante; top = c_my - yside*zoomkonstante; right = c_mx + xside*zoomkonstante; bottom = c_my + yside*zoomkonstante; xside = right - left; yside = bottom - top; xscale = xside / (width); yscale = yside / (height); berechne(); repaint(); } hab die obige schleife in java.. die methode berechne() berechnet ein mandelbortfraktal, braucht dementsprechend recht lange. Wenn ich nur schritte auf 3 sätze, will ich eigentlich, dass er die 3 Bilder einzeln anzeigt. Dies macht er aber nicht. Er rechnet etwa so länge wie für alle 3 zusammen und zeigt mir dann auch erst das letzte bild an. In Delphi kann ich mich dunkel an "Application.processMessages" erinnern, der verhinderte, das die schleife weiterläuft, bevor alle funktionen ausgeführt sind. Kennt jemand eine solche Funktion in java oder eine andere Lösung für mein Problem? Danke + Multi-Zitat Zitieren
#2 5. Juni 2007 AW: Java Schleife anhalten bis alles aussgeführt ist Tach, eigentlich ist es doch logisch, dass er nur das letzte Ergebnis anzeigt, da er ja bei jedem Durchlauf alles überschreibt. Möchtest du jetzt sozusagen eine "Pause"-Funktion? Kenn ich zwar nicht mit Java aus, aber mit C++ ein wenig. In C++ gibt es eine Funktion: Sleep(1000); (1000 = 1000 ms = 1 s). Vllt. gibt es die auch in Java, probier dochmal aus + Multi-Zitat Zitieren
#3 5. Juni 2007 AW: Java Schleife anhalten bis alles aussgeführt ist alles schon probiert.. und das mit dem alles überschreiben passt auch nich: nach dem ersten berechnen müsste das bild noch lange genug angezeigt werden, bis dann das 2. fertig berechnet ist.. + Multi-Zitat Zitieren
#4 6. Juni 2007 AW: Java Schleife anhalten bis alles aussgeführt ist versuch mal das repaint(); in die methode berechne(); hineinzuschreiben. unter anderem kannst du mal versuchen, dir einen rückgabewert aus der methode heraus auszugeben. mit diesem rückgabewert kannst du dann in der for-schleife eine bedingung einbauen, die erst dann weitermacht (countinue), wenn der rückgabewert geliefert worden ist. vllt hilft es ja nice day!!! + Multi-Zitat Zitieren
#5 11. Juni 2007 AW: Java Schleife anhalten bis alles aussgeführt ist Bau dir eine warte schleife ein hier : Code: public static void pause(int zeit){ try{ Thread.sleep(zeit); } catch(InterruptedException f){ } } vllt klappt es dann hatte auch immer das problem und lass mal dein repaint raus oder willst du das alte löschen ? + Multi-Zitat Zitieren
#6 13. Juni 2007 AW: Java Schleife anhalten bis alles aussgeführt ist das repaint kann er nicht rausnehmen, denn er will ja das neue bild zeichnen. sonst würde ja nur das erste gezeichnete bleiben. nice day!!! + Multi-Zitat Zitieren
#7 14. Juni 2007 AW: Java Schleife anhalten bis alles aussgeführt ist Ich bezweifle das es eine Zeile weitergeht befor diese Methode ausgefürt worden ist! Ich glaube auch das es einfach nur beschriben wird... aber geh doch mal im debugerModus durch, dan siehst du ob es weiter geht auch befor die Methode beendet worden ist. piis + Multi-Zitat Zitieren