| |||||||
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: Sep 2003
Beiträge: 1
| loadMovie weiterer Code wird vor Initialisierung ausgefuehrt
Hallo, ich moechte Bilder in einen MovieClip "container" laden, der sich bereits auf der Buehne befindet. Der Code unten soll beispielhaft verdeutlichen wie ich das mache. Habe die Methode "laden" dem prototype MovieClip hinzugefuegt. Das Laden selbst funktioniert auch schoen. Nach dem Laden der Bilder moechte ich allerdings mit Ihnen arbeiten und benoetige sie dazu in einem Array und muss auch auf ihre Breite, x-Koordinate etc. Zugriff haben. Deshalb "warte" ich in der "laden" Methode (in dem onEnterFrame Handler dort) bis das Bild geladen ist. Zum Beweis kann ich dann ueber "trace" die Werte dort anzeigen lassen. Mein Problem nun: ich bin davon ausgegangen, dass die Programmausfuehrung nach dem Aufruf von "laden(container,"1.jpg");" weitergeht, d.h. mein Array initialisiert ist. Wenn ich aber die "trace" Ausgabe beachte, wird mein Code nach dem Ausruf von "laden" zuerst ausgefuehrt, was bedeutet, mein Array besitzt zu diesem Zeitpunkt noch keine Werte. Meine Frage: Wie kann ich sicher gehen, dass meine Bilder geladen sind, bevor ich weiter in der Programmausfuehrung gehe? Und zwar ohne dass ich eine Funktion innerhalb von "laden" aufrufe, da diese ja dann bei jedem geladenen Bild aufgerufen wird, ich aber eine weiterverarbeitende Funktion nur einmal aufrufen moechte... Danke fuer jede Antwort, da ich ziemlich ratlos bin.. Code: //create array for images
img_array = new Array();
//prototype Methode laden
MovieClip.prototype.laden = function (obj,img) {
//load image into object
obj.loadMovie(img);
//wait in event handler till image is loaded
this.onEnterFrame = function() {
//get bytes
geladen = obj.getBytesLoaded();
gesamt = obj.getBytesTotal();
//if things are loaded
if (geladen >= gesamt && geladen > 4) {
//push the image in the array
_root.img_array.push(obj);
//show values
trace(img_array.length);
trace(img_array[0]._width);
//delete the eventhandler
delete this.onEnterFrame;
}else{
//do nothing
}
}
}
//load image
laden(container,"1.jpg");
//show values
trace(img_array.length);
trace(img_array[0]._width); |
| | |
| | #2 (permalink) |
| halb-neu Registriert seit: Nov 2005
Beiträge: 24
|
Hi du möchtest also ein jpg von ausserhalb der swf in einen bereits platzierten mc laden? Dann empfehle ich dir statt dass du loadMovie benutzt, dir mal die "MovieClipLoader"-geschichten anschaust... oder mal hier guckst: MovieClipLoader - Breite von externen Bild mit onLoadComplete auslesen
__________________ Alt+F4 - hilft immer... |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |