Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-10-2005, 10:56   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2004
Beiträge: 35
MovieClipLoader und seine Verwendung

Hallo zusammen,

ich möchte folgendes realisieren:

Es werden 38 leer MCs erstellt, in denen 38 kleine swf's eingeladen werden.
Da ich diese erst anzeigen lassen will wenn alle swf's extern eingeladen wurden, habe ich mir das mit dem MovieClipLoder mal angeschaut.

ActionScript:
  1. var my_mcl:MovieClipLoader = new MovieClipLoader();
  2.         var myListener:Object = new Object();
  3.         myListener.onLoadInit = function(target_mc:MovieClip) {
  4.                 trace("*********First my_mcl instance*********");
  5.                 trace("Movie clip = "+target_mc+" is now initialized");
  6.                 punkte = punkte + 1;
  7.                 trace(punkte);
  8.                 if(punkte == _global.testvar){
  9.                     _global.status = "fertig";
  10.                 } else {
  11.                     _global.status = "nit fertig";
  12.                 }
  13.         };
  14.         myListener.onLoadError = function(target_mc:MovieClip, errorCode:String) {
  15.                 trace("*********First my_mcl instance*********");
  16.                 trace("ERROR CODE = "+errorCode);
  17.                 trace("Your load failed on movie clip = "+target_mc+"n");
  18.         };
  19.         myListener.onLoadStart = function(target_mc:MovieClip) {
  20.         trace("*********First my_mcl instance*********");
  21.         trace("Your load has begun on movie clip = "+target_mc);
  22.         var loadProgress:Object = my_mcl.getProgress(target_mc);
  23.         trace(loadProgress.bytesLoaded+" = bytes loaded at start");
  24.         trace(loadProgress.bytesTotal+" = bytes total at start");
  25.         };
  26.         myListener.onLoadProgress = function(target_mc:MovieClip, loadedBytes:Number, totalBytes:Number) {
  27.                 trace("*********First my_mcl instance Progress*********");
  28.                 trace("onLoadProgress() called back on movie clip "+target_mc);
  29.                 trace(loadedBytes+" = bytes loaded at progress callback");
  30.                 trace(totalBytes+" = bytes total at progress callback");
  31.         };
  32.         myListener.onLoadComplete = function(target_mc:MovieClip) {
  33.                 trace("*********First my_mcl instance*********");
  34.                 trace("Your load is done on movie clip = "+target_mc);
  35.                 var loadProgress:Object = my_mcl.getProgress(target_mc);
  36.                 trace(loadProgress.bytesLoaded+" = bytes loaded at end");
  37.                 trace(loadProgress.bytesTotal+" = bytes total at end");
  38.                
  39.         };
  40.  
  41.         my_mcl.addListener(myListener);
  42.  
  43. for(i=1;i<u3;i++){
  44.             //erstellung der mcs
  45.             my_mcl.loadClip("http://v42.itnt.de/swf/"+_root.lageanis+"/angebot_btn/stand_"+_root["abutton"+i+"_bild"]+"/a.swf", "bild" + i);
  46.                        
  47.         }

Um zu überprüfen ob wirklich alle vollständig geladen sind, lasse ich mir im onloadinit eine veriable zurückgeben die auf _global gesetzt ist. Allerdings kann ich diese Variable nicht auslesen. In _global.testvar steht die Anzahl der Buttons und die Variable punkte wird später die Anzahl der fertig geladenen Buttopns enthalten. Wenn ich dieser vergleich soll er mir "fertig" zurückgeben, aber genau diese Variable kann ich nicht auslesen!

Oder fällt jemandem was besseres ein wie man kontrollieren kann ob die 38 kleinen swfs geladen wurden??

Grüße und besten Dank schonmal..

five...
fiveone ist offline   Mit Zitat antworten
Alt 17-10-2005, 11:26   #2 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Ich würde sie einfach nacheinander laden
und prüfen, wann der Letzte fertig geladen ist.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 17-10-2005, 12:10   #3 (permalink)
Neuer User
 
Registriert seit: Dec 2004
Beiträge: 35
Sorry, hatte ich vielleicht vergessen zu sagen! Ich weiss nicht wieviele es in den genauen Fällen immer sind. Alles soll so dynamisch wie möglich gehalten werden.
fiveone ist offline   Mit Zitat antworten
Alt 17-10-2005, 12:30   #4 (permalink)
Neuer User
 
Registriert seit: Sep 2005
Beiträge: 53
Ja ich glaube auch das es daran liegt
Falverständnis ist offline   Mit Zitat antworten
Alt 17-10-2005, 12:44   #5 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Für ein dynamisches einladen in Flash müsstest Du
die Mp3 Files so benennen, dass man sie per Iteration
nacheinander laden kann.
(z.B. 1.mp3, 2.mp3 usw.)

Wenn Du nun per MovieClipLoader einen onLoadError
bekommt, weißt Du, dass keine Mp3 mehr nachgeladen
werden kann und die letzte Mp3 fertig geladen wurde.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 17-10-2005, 12:53   #6 (permalink)
Neuer User
 
Registriert seit: Dec 2004
Beiträge: 35
Nein, das ganze funktioniert soweit ja! Nur bekomme ich die Variable nicht aus der Funktion heraus!

Das mit der Schleife, dem erstellen, dem reinladen usw funktioniert alles! Er tracet mir auch jedes MC bzw. reingeladene swf-Datei nur muss ich dann am Ende wissen ob alle geladen wurden! Ob welche nicht existieren ist erstmal egal, da ich davon ausgehe das alle da sind!
fiveone ist offline   Mit Zitat antworten
Alt 17-10-2005, 12:59   #7 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hallo!
Hast du die Variable "punkte" vorher auch deklariert?
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 17-10-2005, 13:38   #8 (permalink)
Neuer User
 
Registriert seit: Dec 2004
Beiträge: 35
Wenn die Deklaration so richtig ist, dann ja:

_global.punkte = 0;
_global.statusp = "";
fiveone ist offline   Mit Zitat antworten
Alt 19-10-2005, 08:25   #9 (permalink)
Neuer User
 
Registriert seit: Dec 2004
Beiträge: 35
Weiss niemand eine Lösung für das Problem?
fiveone ist offline   Mit Zitat antworten
Alt 19-10-2005, 10:40   #10 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Wird dir den "punkte" richtig ausgegeben? Würde die sonst vielleicht mal global hochzählen (_global.punkte++).
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 19-10-2005, 11:23   #11 (permalink)
Neuer User
 
Registriert seit: Dec 2004
Beiträge: 35
Nein, ich kann auf keine Variable zugreifen!

Ich habe jetzt ne andere Lösung gefunden! Alles was ich mit den reingeladenen swf s machen will, schreibe ich in onLoadInit und fertig is ;o)

Trotzdem kann man irgendwie keine global-definierten" Variablen auslesen...
fiveone ist offline   Mit Zitat antworten
Alt 19-10-2005, 11:34   #12 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Schau mal was passiert, wenn Du das in ein Leeres Skript
schreibst:
ActionScript:
  1. _global.punkte = 20;
  2. punkte++;
  3. trace(punkte);
  4. trace(_global.punkte);
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz 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 01:40 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele