Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-12-2004, 21:16   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 152
Wann ist externe SWF fertig geladen?

Hallo.
in meinem Projekt, lade ich per LoadMovie()
eine externe SWF Datei in einen leerenMC namens "video"

video.loadMovie("extern.swf");


um rauszufinden wann die swf Datei fertig geladen wurde, habe ich auf dem Leeren MC folgendes eingefügt:

onClipEvent (data) {
_root.go = 1;
}
onClipEvent (enterFrame) {
_root.loading._alpha=100;
if (_root.go == 1)
{
_root.loading._alpha=0;
}
}

wobei loading ein MC ist der mir eine Ladeanimation anzeigt.

Sobald die SWF geladen ist , soll diese Ladeanimation ausgeblendet werden.
Das Problem ist, das die Ladeanimation nicht die ganze Zeit zu sehen ist.
Sobald ein Teil der externen swf Datei geladen wurde, verschwindet die Ladeanimation und man den Teil der externen SWf der geladen wurde.
Da es sich bei beiner externen SWF um einen Videoclip handelt, möchte ich natürlich nur dass, die Ladeanimation erst dann verschwindet, wenn der Videoclip vollständig geladen wurde.
So wie es jetzt ist, sieht man kurz die Ladeanimation, die verschwindet dann und man sieht vom Videoclip immer nur das was gerade geladen wird. ich möchte aber das der VideoClip erst dann anfängt zu laufen, wenn er vollständig geladen wurde. Bis das geschehen ist möchte ich die Ladeanimation sehen.
Wie es scheint, setzt
onClipEvent (data) {
_root.go = 1;
}
mein go variable erst nicht erst dann auf 1 wenn die swf folständig geladen wurde, sondern bereits wenn die ersten teildaten geladen werden.

Wie kann ich abprüfen ob die extern.swf vollständig geladen wurde?

Wer kann helfen?
vielen dank
__________________
Seien wir realistisch, versuchen wir das Unmögliche.
tasovi ist offline   Mit Zitat antworten
Alt 14-12-2004, 21:43   #2 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 6.415
sobald du etwas in einen mc lädst wird dessen aktueller inhalt entfernt.
um dein problem effektiv zu lößen machste es wie folgt:

ein containerMC erstellen, darauf und darein kommt später dein script bzw dein ladestatus.
ebenfalls in diesem mc(name zB content) befindet sich ein leerer mc der später dein video enthält.
nun lädste per

containerMC.content.loadMovie("deine.swf") deine swf rein und auf den containerMC legste dein script.

schau mal in die faqs von diesem forum nach preloader.
denke die technik wird doch ähnlich beschrieben

deluxe
Deluxe ist offline   Mit Zitat antworten
Alt 14-12-2004, 21:57   #3 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 152
hallo!
ich habe es auch ohne container gelößt!
habe bemerkt, dass onClipEvent (data) {
_root.go = 1;
}
nicht das richtige ist.
mit einem standart preloader hat es geklappt!

aber mich würde interessieren, welchen Vorteil ein containerMC hat, und wie man ihn erstellt?
__________________
Seien wir realistisch, versuchen wir das Unmögliche.
tasovi ist offline   Mit Zitat antworten
Alt 14-12-2004, 22:25   #4 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Zitat:
aber mich würde interessieren, welchen Vorteil ein containerMC hat, und wie man ihn erstellt?
Der container MC ist einfach ein leere MC, also einfach Strg+F8 und dann benennen.Vergiss später nicht den Instance-Name auf der Bühne. Damit wird er dann angesprochen, wie oben beschrieben.

Der Vorteil, ist du kannst dein geladen Film überall auf der Bühne plazieren, außerdem kann du ihn besser ansprechen, gerade wenn du mehrer movies lädst.
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk ist offline   Mit Zitat antworten
Alt 14-12-2004, 23:58   #5 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Oder!
ActionScript:
  1. this.createEmptyMovieClip("container", 100);
  2. this.container._x=100;
  3. this.container._y=100;
  4. this.container.loadMovie("Dein.swf");



Oder den Kompletten Quarck!!
ActionScript:
  1. this.createEmptyMovieClip("container", 100);
  2. this.createEmptyMovieClip("controller", 101);
  3. this.container._x = 100;
  4. this.container._y = 100;
  5. this.container.loadMovie("Dein.swf");
  6. this.controller.onEnterFrame = function() {
  7.     var bt = this._parent.container.getBytesTotal();
  8.     var bl = this._parent.container.getBytesLoaded();
  9.     if ((bl>=bt) && (bl>4)) {
  10.         this._parent.container.gotoAndPlay("irgenwohin");
  11.         this.removeMovieClip();
  12.     }
  13. };
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"

Geändert von RustyCake (15-12-2004 um 00:05 Uhr)
RustyCake ist offline   Mit Zitat antworten
Alt 15-12-2004, 19:15   #6 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 152
perfekt!

danke!

letzte frage:
wieso wird der movieclip am ende removed??
__________________
Seien wir realistisch, versuchen wir das Unmögliche.
tasovi ist offline   Mit Zitat antworten
Alt 15-12-2004, 19:26   #7 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 6.415
er ist nach dem preload nutzlos-zumindest im fall von rusty
aufpassen! ich habe es oben anders beschrieben
dort wurde der leere mc in den etwas geladen werden sollte in dem container erstellt. da sollte man den contaienr natürlich nicht entfernen.
hier kein problem
warum?ordnungsprinzip und rechenleistung
würde mans nicht entfernen hättest du nen enterFrame
-klar man kann auch nur den entfernen dann aber hättest du ne mc leiche
und wer läßt schon gerne leichen liegen

deluxe
Deluxe 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 11:18 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele