Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 09-06-2004, 15:15   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 70
SWF dynamisch laden und onLoad

Ich habe einen MovieClip und in dessen zugehöriger Klasse will ich dynamisch swf's laden, bzw. "preloaden", da die meisten sofort wieder unsichtbar gemacht werden sollen. Das ._visible = false funktioniert aber anscheinend erst wenn das swf-File komplett geladen wurde. Wie kann ich nun per Script herrausfinden wann das File geladen wurde? Ich stelle mir das so vor wie bei XML.load und XML.onLoad! Gibts da was? Das onLoad vom MovieClip will irgendwie nicht


PHP-Code:
tmp=this.createEmptyMovieClip("Movie"+i,getNextHighestDepth());
tmp.loadMovie("./../"+Movies[i][0]+"/"+Movies[i][0]+".swf");
tmp.onLoad = function(){
    
trace("Movie loaded");

Mach ich was falsch? Ich möchte ungern in den swf's selbst was ändern, die sollen unabhänig bleiben!

Danke schonmal!
Benjy
Benjy ist offline   Mit Zitat antworten
Alt 09-06-2004, 15:25   #2 (permalink)
Neuer User
 
Benutzerbild von lernenOhneEnde
 
Registriert seit: Jun 2004
Beiträge: 77
mit mc.onLoad hab ich auch schon viel zeit zugebracht.
anscheinend ist ein bug in mc.onLoad. da gibt es scripte um das problem zu umgehen oder du weichst auf mc.onEnterFrame aus und fragst darin ab, ob der Film geladen ist.
OnEnterFrame funktioniert jedenfalls.

loe
lernenOhneEnde ist offline   Mit Zitat antworten
Alt 09-06-2004, 15:44   #3 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
So kann man es z.B. machen:
PHP-Code:
//leeren MC auf Tiefe 1 anlegen
this.createEmptyMovieClip("meinNeuerMC",1);

//und in diesen MC den Film nachladen
this.meinNeuerMC.loadMovie("film1.swf");

//dann ständig überprüfen
_level0.onEnterFrame = function(){
   var 
fin int(this.meinNeuerMC.getBytesLoaded()*100/this.meinNeuerMC.getBytesTotal());//Prozentwert

   //wenn alles geladen dann...
   
if(fin>=100 && this.meinNeuerMC._width>&& this.meinNeuerMC._height>0) { 

      
//gleich wieder verstecken
      
this.meinNeuerMC._visible false;

      
//und den onEnterFrame wieder löschen
      
delete _level0.onEnterFrame;
   }

  Mit Zitat antworten
Alt 09-06-2004, 15:55   #4 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 70
Danke für die Antworten, hab aber selbst ne Lösung gefunden!

PHP-Code:
// MovieClipLoader instanziieren
var MCL = new MovieClipLoader();
// Listener dafür schreiben für LoadComplete
var MCL_Listener = new Object();
MCL_Listener.onLoadComplete = function(tmp){
    
trace("Movie loaded");
}
// Listener hinzufügen
MCL.addListener(MCL_Listener);

// Platzhalter-Movie definieren            
var tmp=this.createEmptyMovieClip("Movie"+i,getNextHighestDepth());

// per MovieClipLoader das swf-File laden 
MCL.loadClip("./../"+Movies[i][0]+"/"+Movies[i][0]+".swf",tmp); 
Vielleicht interressierts ja jemanden....an sonsten nochmals danke trotzdem!
Benjy ist offline   Mit Zitat antworten
Alt 09-06-2004, 23:04   #5 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Oder so... Aber natürlich erst ab F7
  Mit Zitat antworten
Alt 10-06-2004, 08:58   #6 (permalink)
Neuer User
 
Benutzerbild von lernenOhneEnde
 
Registriert seit: Jun 2004
Beiträge: 77
Hallo Benjy,

Du benutzt in deinem Code den Befehl 'loadClip' - der scheint in MX2004 neu hinzugekommen zu sein (ich benutzte MX).
Ist es mit 'loadClip' möglich einen MC von einer Stelle z.B. _root.container an eine andere Stelle, z.B. _root.content zu kopieren?

gruss loe
lernenOhneEnde ist offline   Mit Zitat antworten
Alt 10-06-2004, 19:27   #7 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 70
Zitat:
Zitat von lernenOhneEnde
Hallo Benjy,

Du benutzt in deinem Code den Befehl 'loadClip' - der scheint in MX2004 neu hinzugekommen zu sein (ich benutzte MX).
Ist es mit 'loadClip' möglich einen MC von einer Stelle z.B. _root.container an eine andere Stelle, z.B. _root.content zu kopieren?

gruss loe
Ja, ich benutze MX2004, hauptsächlich weil es dadurch für mich einfach geworden ist Objekt-Orientiert AS zu scripten (zumindest im Ansatz) und das Klassenprinzip für mich leicht zu verstehen war.

Daher wird die Klasse MovieClipLoader wohl auch erst beim MX2004 dazu gekommen sein (wie auch schon agedoubleju geschrieben hat). Ich denke nicht das du damit Clips von einer Stelle an die andere laden kannst, da der erste Parameter eine "full-qualified URL" sein muss....

Aber dein Problem sollte wohl mit "duplicateMovieClip" lösbar sein, oder?

Ciao,
Benjy
Benjy 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 09:03 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele