Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-06-2005, 17:08   #1 (permalink)
Neuer User
 
Benutzerbild von sascha wenning
 
Registriert seit: Jun 2001
Ort: NRW
Beiträge: 357
Ladeprozess abbrechen

Hallo Leute,

folgendes Szenario:
über eine for-Schleife attache ich mc's auf die Bühne und lade darein in einen leeren mc jpg's (Tumbnails) per loadMovie. Das können mitunter schon mal 30-40 Movieclips, also auch 30-40 Ladevorgänge sein.

Klickt man nun auf ein Thumbnail, soll eine große hochwertige Variante des Bildes geladen werden.

Klickt man allerdings BEVOR alle Miniaturen geladen wurden, lädt Flash erst alle Thumbs und dann das große Bild. Ist ja auch logisch.

Wie kann ich aber nun die übrigen loadMovie-Ladevorgänge für die Thumbs abbrechen, so dass sofort das große Bild geladen wird? unloadMovie() o.ä. funktioniert nicht...

Im Prinzip also eine Simulation des "Abbrechen-Knopfes" aus der Leiste des Internet Explores um alle ausstehenden Requests zu löschen.

Dieses Thema tauchte hier bereits einige Male auf, allerdings ohne Ergebnis...

Tipps herzlichst willkommen!

Danke,
Sascha
sascha wenning ist offline   Mit Zitat antworten
Alt 28-06-2005, 17:13   #2 (permalink)
Hardstyle DJ
 
Benutzerbild von djdwarf
 
Registriert seit: Nov 2004
Ort: Hamburg
Beiträge: 622
Hmm ... bin auch nich so der AS Held, aber wäre vielleicht ne Idee:

Baue in deine Schleife eine Abfage rein:

ActionScript:
  1. if (brechdieschleifeab == true) {break()}

Auf deinen Button kannst du diese Variable dann auf true setzen.
Weiss nich ob das klappt, wäre aber eben meine Idee jetzt

Gruss,
Sascha (*g*)
djdwarf ist offline   Mit Zitat antworten
Alt 28-06-2005, 20:20   #3 (permalink)
Neuer User
 
Benutzerbild von sascha wenning
 
Registriert seit: Jun 2001
Ort: NRW
Beiträge: 357
OK, danke für die Antwort.

Aber natürlich ist die ganze Sache noch etwas komplexer als oben dargestellt.

In der for-Schleife werden in einer Rutsche die Clips attached. Klickt man auf eine andere Galerie werden wieder welche attached und so weiter.

Der Effekt ist, dass wenn man "wild" umher klickt, lange warten muss, bis die entsprechenden Bilder geladen sind, weil ja Galerie für Galerie die Bilder von den vorherigen Klicks erst noch im Hintergrund geladen werden. Weil die Anfrage an den Server ja bereits gestellt wurde... Selbst wenn man den Movieclip entfernt scheint der Prozess nicht zu stoppen. Scheint also irgendwie eine generelle Flash Player-Geschichte zu sein.

Man müsste im Prinzip nicht alle Bilder gleichzeitig laden, sondern eins nach dem anderen mit Preloader. Und erst wenn eins geladen ist und man sich noch in der gleichen Galerie befindet, dann darf er das Nächste laden.

Ich dachte halt, es gibt eine komfortablere Möglichkeit, einfach alle Vorgänge zu stoppen...

Ich gebe auch noch nicht auf, vielleicht hat noch jemand ein heißes Eisen im Feuer?
sascha wenning ist offline   Mit Zitat antworten
Alt 29-06-2005, 09:56   #4 (permalink)
Hardstyle DJ
 
Benutzerbild von djdwarf
 
Registriert seit: Nov 2004
Ort: Hamburg
Beiträge: 622
Hmm .. ok, hoffe mal das ich dich soweit richtig verstanden habe.

Zitat:
Zitat von sascha wenning
Man müsste im Prinzip nicht alle Bilder gleichzeitig laden, sondern eins nach dem anderen mit Preloader. Und erst wenn eins geladen ist und man sich noch in der gleichen Galerie befindet, dann darf er das Nächste laden.
So einen Preloader habe ich mir mal für einen Comic gebaut, der die Szenen nacheinander einläd. Vielleicht kannst du den auf deine Anwendung umschreiben. Das Script liegt innerhalb eines MC's, also quasi ein Load_MovieMC.

ActionScript:
  1. //erster Frame
  2. _root.container_1.loadMovie ("bild_01.swf");
zweiter Frame leer

ActionScript:
  1. //dritter Frame
  2. geladen = _root.container_1.getBytesLoaded();
  3. bytes = _root.container_1.getBytesTotal();
  4. _root.prozent = Math.round((geladen/bytes)*100); //brauchst du ja eigentlich nicht
  5.  
  6. if (!_root.container_1._totalframes || _root.container_1._framesloaded<_root.container_1._totalframes) {
  7.     gotoAndPlay(_currentframe-1);
  8. }
Im nächsten Frame das ganze dann nochmal mit bild_02.swf usw. so werden alles schön nacheinander weg eingeladen. Wenn du den Ladevorgang abbrechen willst, kannst du den Movieclip anhalten oder löschen, dann wird auch kein weiteres Bild geladen. Oder du baust eben eine Abfrage rein, die ermittelt ob man sich noch in der Gallerie befindet, wenn nicht, soll er nicht weiterladen.

Vielleicht hilft dir das ja? Ansonsten poste doch mal deine Fla, oder dein Script, damit es noch deutlicher wird.


Gruss,
Sascha
djdwarf ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 19:14 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele