| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Jun 2001 Ort: Munich
Beiträge: 315
| Warteschleife beim Laden externer jpgs
Ewig lang schon nicht mehr hier gewesen und dann gleich eine so dumme Frage .. sorry. Meinen Dank schon jetzt all denen, die sich die Mühe machen das hier zu lesen. ![]() Also, Ziel ist eine kleine Galerie in Flash welche extern zu ladende jpgs verwendet. Im ersten Schritt werden die Thumbnails der Bilder in vorher vorbereitete Container geladen. Damit das alles geordnet abläuft soll Flash immer Zweiergruppen von Thumbnails laden und dann warten, bis diese beiden Bilder geladen sind. Ist das erledigt sind die nächsten beiden dran. Und genau hier liegt mein Problem, Flash kümmert sich nicht um die Warteschleife sondern läuft weiter. Am Ende passt zwar alles, aber die innere Schleife fehlt ... Auf der Zeitleiste sieht das wie folgt aus: frame x: // Zähler initiieren i = 1; frame x+1 (als pre_2 bezeichnet): // Containernamen bestimmen ziel_1 = "th_c_"+i; ziel_2 = "th_c_"+(i+1); // Pfad zum zu ladenden jpg bestimmen name_1 = path + i +"k.jpg"; name_2 = path + (i+1)+"k.jpg"; // jpg in den Container laden loadMovie(name_1, ziel_1); loadMovie(name_2, ziel_2); frame x+2: // Gesamtgröße der Thumbs ermitteln max_1 = eval(ziel_1).getBytesTotal(); max_2 = eval(ziel_2).getBytesTotal(); frame x+3 (als pre_3 bezeichnet): // Aktuellen Ladestand ermitteln akt_1 = eval(ziel_1).getBytesLoaded(); akt_2 = eval(ziel_2).getBytesLoaded(); frame x+4: // Entweder 1 oder 2 sind noch nicht fertig - dann warten if ((akt_1 < max_1) || (akt_2 < max_2)) { gotoAndPlay("pre_3"); } frame x+5: // Zähler hochsetzen i = i+2; // wenn noch nicht max, dann weitere Thumbs laden if (i<=10) { gotoAndPlay("pre_2"); } Wie gesagt, es werden alle 10 Thumbnails sauber in Ihre Container geladen, die äußere Schleife funktioniert also .. nur die innere irgendwie nicht. Die Variablen max_1/2 und akt_1/2 sind am Ende korrekt besetzt, also kann der Fehler imho nicht da drin liegen .. aber wo sonst sollte das Problem sein? Sorry, ich steh echt am Schlauch ... Grüßle Tom PS Weiter hinten beim Laden der "großen" Bilder passiert der gleiche Fehler noch mal .. |
| | |
| | #2 (permalink) |
| oEF(etischist) Registriert seit: Dec 2003 Ort: muc
Beiträge: 664
|
hast Du Dir schon mal die Werte der Variablen ausgeben lassen (tracen)? Vielleicht passt da ja was nicht?
__________________ Grüße, solo Die Antwort auf fast alle Fragen gibt es hier: AS-Referenz Weitere Fehlerquellen sind: Flasche Pfadangeben oder falsch versorgte Variablen. Beides kann man gut hiermit überprüfen. Und den Debugger gibts ja auch noch :) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Jun 2001 Ort: Munich
Beiträge: 315
|
Hallo Solo, erst mal Danke! Offline bringt mir das Tracen leider wenig, da die jpgs ja sofort da sind. Am Ende allerdings stehen die richtigen Werte drin, von dem her bin bisher ich davon ausgegangen, dass damit alles ok ist. Online sieht die Sache anders aus wie ich inzwischen feststellen musste. Die Variable max wird auf -1 gesetzt (warum auch immer), die Variable akt bleibt auf 0 .. und das ändert sich selbst in einer Endlosschleife nicht (warum wo doch das Bild lädt?). Da 0 > -1 wird die Warteschleife also übersprungen. Die Frage lautet daher: warum werden die Vars offline korrekt gesetzt (sonst würden sie am Ende ja nicht stimmen), online aber nicht? Die Bilder als solches werden auch online sauber geladen, eine falsche Pfadangabe kann also nicht die Ursache sein - weder bei der Datei noch beim Container. Nun bin ich zwar einen Schritt weiter, aber .. *seufz* Fällt Dir noch was dazu ein? Grüßle Tom |
| | |
| | #4 (permalink) |
| oEF(etischist) Registriert seit: Dec 2003 Ort: muc
Beiträge: 664
|
tracen bringt auch offline was, kannst ja die Downloadgeschwindigkeit simulieren lassen. hab alles mal in ein oEf gepackt (mag diese Codeverteilung über viele Frames nicht): ActionScript:
__________________ Grüße, solo Die Antwort auf fast alle Fragen gibt es hier: AS-Referenz Weitere Fehlerquellen sind: Flasche Pfadangeben oder falsch versorgte Variablen. Beides kann man gut hiermit überprüfen. Und den Debugger gibts ja auch noch :) |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Jun 2001 Ort: Munich
Beiträge: 315
|
Bin auch kein Fan von Codeverteilung, aber bisher hatte ich mit verteiltem Code einfach weniger Probleme. Danke für Dein oEF, werde das nachher in Ruhe testen. Nur eine Frage noch: wie kriege ich Flash dazu offline auch extern geladene Objekte langsam zu laden? Den Hauptfilm, kein Problem via "Streaming anzeigen", aber die externen jpgs? Sorry falls das nur eine RTFM-Frage ist, aber ... Danke schon mal!! Grüßle Tom |
| | |
| | #6 (permalink) |
| no guts no glory Registriert seit: May 2004 Ort: Nordhorn
Beiträge: 7.998
|
hmm ... im normalfall läd er bei "Download Simulieren" auch externe sachen wie .jpg mit der entprechenden geschwindikeit.
__________________ Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke. 'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.' |
| | |
| | #7 (permalink) | |
| Neuer User Registriert seit: Jun 2001 Ort: Munich
Beiträge: 315
| Zitat:
| |
| | |
| | #8 (permalink) |
| no guts no glory Registriert seit: May 2004 Ort: Nordhorn
Beiträge: 7.998
|
oh, mea culpa ... ich hab MX2004 ... ich bin nicht sicher ob die funktionen bei MX und MX2004 gleich sind.
__________________ Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke. 'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.' |
| | |
| | #10 (permalink) |
| Neuer User Registriert seit: Jun 2001 Ort: Munich
Beiträge: 315
|
Tja ... das wär dann fast schon ein Grund fürs Update, aber das gibt das Konto derzeit nicht her. @Solo: habe Dein Script mal eingebunden. Nach einigem hin und her hab ich mich zwar zurecht gefunden und es zum Laufen gebracht (mein Fehler, nicht Deiner) .. aber das Ergebnis ist leider praktisch das gleiche wie bei der verteilten Variante. Ob das nun daran liegt, dass ich Dein Skript zu sehr verbeult habe oder eine andere Ursache hat .. tja ... keine Ahnung. Falls doch noch jemand ne Idee hat, immer her damit. Dank Euch für die Mühen!! ![]() Grüßle Tom |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |