Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 08-05-2004, 13:45   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
Preloader für externe swf - bitte nicht schlagen...

hallo,
ich kriegs einfach nicht hin. obwohl ich so ziemlich alles durchforstet habe, klappt das bei mir einfach nicht.

Ich hab einen Hauptfilm (hauptfilm.fla)

Darin ist ein button und ein leeres movie (filmbutton).

Auf klick soll sich im filmbutton eine externe swf (film_vorschau.swf) als vorschau für den eigentlichen film öffnen. da diese swf etwas größer ist, muss sie mit preloader geladen werden.

Ist die vorschau geladen, kann man sie anklicken und der film (film_gross.html, in die html ist eine weitere swf eingebettet) soll in neuem fenster aufgehen. Hier ist auch wieder ein preloader nötig.

Bei dem Versuch, einen preloader in die externen swf´s einzubauen, hab ich festgestellt, daß der preloader im Filmbutton nicht angezeigt wird.
Ich verwende immer einen preloader, der so aussieht:

1. Schlüsselbild


ActionScript:
  1. bytes_gesamt = _root.getBytesTotal() add " Bytes gesamt";
  2. bytes_geladen = _root.getBytesLoaded() add " Bytes geladen";
  3. prozent = int(_root.getBytesLoaded()*100/_root.getBytesTotal()) add " Prozent";
  4. if (prozent == "100 Prozent") {   
  5. gotoAndPlay(3);

2. Schlüsselbild

ActionScript:
  1. gotoAndPlay(1);

3. Schlüsselbild: Film, der geladen werden soll.

Es wär natürlich schön, wenn der preloader für die externen auch so aussieht. Da ich nicht so viel verständnis von as habe, brauch ich dabei echt hilfe.
Flash Doc hat mal geschrieben:
Zitat:
Kleiner Hinweis am Rande: Wird ein Film in einen anderen nachgeladen, so sollte in dem Film, welcher den anderen nachlädt, der Preloader stehen. Sonst ist wärend der Vorladezeit, bevor also der nachgeladene Film startet, vom Preloader nichts angezeigt. Die Bilder für den Preloader müssen im nachgeladenen Film ja erst mal vorgeladen werden.
Wie mach ich das? Bitte helft mir. Die dateien hab ich angehängt.
Vielen Dank!
Gruß,
Lotta
Angehängte Dateien
Dateityp: zip index_folder.zip (19,4 KB, 6x aufgerufen)
lotta_svea ist offline   Mit Zitat antworten
Alt 08-05-2004, 15:41   #2 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Versuchs mal so!!
Du zielhst Ja in Deinem script mit ("_root"); auf die Haupttimeline des Projekts!!

ActionScript:
  1. var bytes_gesamt = this.getBytesTotal() add " Bytes gesamt";
  2. var bytes_geladen = this.getBytesLoaded() add " Bytes geladen";
  3. var prozent = int(this.getBytesLoaded()*100/this.getBytesTotal()) add " Prozent";
  4. if (prozent == "100 Prozent") {
  5.     gotoAndPlay(3);
  6. }
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 08-05-2004, 15:51   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
hmm,
aber das ist ja der (allgemeine) preloader für den hauptfilm. wie sag ich dem denn, daß er die andere swf preloaden soll? oder wo kommt dieses script hin?
Vielen dank,
lotta
lotta_svea ist offline   Mit Zitat antworten
Alt 08-05-2004, 15:55   #4 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
in den eingeladenen mc!!
kann des statement von Flash Doc net ganz nachvollziehen!

Wenn Du nicht viele nachladen möchtest, ist den Loader in die zu ladenden Mc packen der schnellste und einfachste weg!!
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 08-05-2004, 16:03   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
Das hab ich ja schon gemacht. (nicht in den angehängten beispiel dateien, da es ja nicht funzt). ich hab in der original datei "film_gross.fla" und in "film_vorschau.fla" je einen preloader am anfang, der aber nicht angezeigt wird, wenn die swf läd.
ausserdem will ich nicht nur diese eine swf laden, sondern mehrere, und weiß nicht, wie das funktionieren soll.
vielen dank für die hilfe,
lotta
lotta_svea ist offline   Mit Zitat antworten
Alt 08-05-2004, 16:33   #6 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Hoffentlich wird des jetzt net zu heftig
Mit so einem Teil kannst auch mehrere Mc's laden!!
ist auch eine function eingebaut die automatisch wenn ein neuer mc geladen wurde der alte rausgekickt wird!!

ActionScript:
  1. stop();
  2. var timeline = this;
  3. var old_conti;
  4. this.createEmptyMovieClip("container1", 101);
  5. this.container1._x = 150;
  6. this.container1._y = 50;
  7. this.createEmptyMovieClip("container2", 102);
  8. this.container2._x = 150;
  9. this.container2._y =50;
  10. function loader_funk(mc_toload, conti) {
  11.     timeline.load_mc._visible = 1;
  12.     timeline[conti].loadMovie(mc_toload);
  13.     loadID = setInterval(function () {
  14.         var gesamt = timeline[conti].getBytesTotal();
  15.         var bereits = timeline[conti].getBytesLoaded();
  16.         var prozent = Math.ceil((bereits/gesamt)*100);
  17.         timeline.load_mc.ladebalken._xscale = prozent;
  18.         timeline.load_mc.textProzent.text = prozent+"%";
  19.         if (prozent>=100) {
  20.             old_conti.unloadMovie();
  21.             timeline[conti].gotoAndPlay(2);
  22.              timeline.load_mc._visible = 0;
  23.             clearInterval(loadID);
  24.             old_conti = timeline[conti];
  25.         }
  26.     }, 10);
  27. }
  28. this.lade_btn1.onPress = function() {
  29.     loader_funk("jlo.jpg", "container1");
  30. };
  31. this.lade_btn2.onPress = function() {
  32.     loader_funk("pam.jpg", "container2");
  33. };

[Edith] War ein kleiner fehler drinne, respt, es hat was gefehlt[/Edith]
Angehängte Dateien
Dateityp: zip loader.zip (3,1 KB, 21x aufgerufen)
__________________
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 (08-05-2004 um 16:56 Uhr)
RustyCake ist offline   Mit Zitat antworten
Alt 08-05-2004, 16:47   #7 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
ok. dieses script schreibe ich nur einmal? in die ersten keyframes des hauptfilms? und dann weise ich jedem button einen instanznamen zu ("lade..")? klingt logisch.
und die externen swf´s- die kriegen keinen preloader? der ist dann schon mit dem preloader im hauptfilm enthalten?
und dann hab ich noch eine frage zu "container" . ich hab das öfter schon gesehen. ist das eine funktion in as oder heisst der ort, wo die swf´s reingeladen werden "container" (in meinem fall "filmbutton" ?
ist mir alles etwas kompliziert, aber ich werds schon verstehen. scripte einfach kopieren und nix kapieren halte ich für wenig sinnvoll.
noch was: wenn die "vorschau swf´s" reingeladen sind, will ich ja per klick wieder eine neue swf in neuem fenster laden. reicht dafür auch das einmalige script im hauptfilm oder wie muss ich das machen?
tut mir echt leid *schäm*
danke!
lotta
lotta_svea ist offline   Mit Zitat antworten
Alt 08-05-2004, 16:55   #8 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Diese script kannst für alle filme verwenden die Du laden möchtest!!
Des kommt ins erste Frame des Hauptfilms, und die externen brauchen keinen loader!!
Die "container" kannst benennen wie Du möchtest, sind leere mc's die zum laden bereitgestellt werden!!
Des ganze sieht vielleicht etwas komplizert aus, ises aber eigentlich nicht!!
Wennst noch fragen hast, immer gerne

P.S. habs nochmal upgedatet da war ein kleiner fehler drinne (nur des script, nicht die geladene datei)
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 08-05-2004, 17:06   #9 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
schon die nächste frage...

zum verständnis:

stop();
var timeline = this;
var old_conti;
this.createEmptyMovieClip("container1", 101);

container 1 ist virtuell und wird automatisch erstellt? ich brauch das nicht extra bauen ( so wie "filmbutton")? was ist conti?

this.container1._x = 150;
this.container1._y = 50;

das sind wohl die koordinaten? aber woher weiß man die größe oder ist das automatisch so gross, wie die datei die reingeladen wird?

this.createEmptyMovieClip("container2", 102);

was bedeutet 101 und 102 (depth)? Wenn ich noch mehr swfs reinladen will, wiederhole ich diesen part also, mit "container3, 103", "container4 , 104" ?


function loader_funk(mc_toload, conti) {
timeline[conti].loadMovie(mc_toload);
loadID = setInterval(function () { var gesamt = timeline[conti].getBytesTotal();var bereits = timeline[conti].getBytesLoaded();var prozent = Math.ceil((bereits/gesamt)*100);timeline.load_mc.ladebalken._xscale = prozent;timeline.load_mc.textProzent.text = prozent+"%";if (prozent>=100) {old_conti.unloadMovie();timeline[conti].gotoAndPlay(2);timeline.load_mc._visible = 0;clearInterval(loadID);old_conti = timeline[conti];}}, 25);
}
this.lade_btn1.onPress = function() {
loader_funk("Dein1.swf", "container1");
};
this.lade_btn2.onPress = function() {
loader_funk("Dein2.swf", "container2");
};

die letzten beiden sind dann die aktionen, die ausgeführt werden, wenn man auf den jeweiligen button klickt, ja? und warum braucht man dann mehrere container?

das ganze kommt also ins erste schlüsselbild des hauptfilms. und der eigentliche film startet dann im 2. schlüsselbild?
die externen swf´s starten gleich im ersten keyframe?
wohin pack ich denn den ladebalken und das dyn textfeld? ich meine, wo erscheint das dann auf der bühne? über dem feld wo der container ist? und in den externen?

ich will echt nicht aufdringlich sein. aber ich steh auf dem schlauch und ich MUSS das hinkriegen. kann doch nicht sein, daß es an sowas scheitert...
VD,
Lotta
lotta_svea ist offline   Mit Zitat antworten
Alt 08-05-2004, 17:20   #10 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
yupp!
die container brauchst nicht extra bauen!!
So wie ich des gemacht hab kannst auch Deine restlichen erstellen!!

nochmal yupp!!
die _y und_x geschichten beschreiben den ober linken punkt Deines eingeladen Mc's!!
anpassen an die größe des Mc's tut sich der automatisch!!

nochmal yupp!!!
101 und 102 sind die stappeltiefe (depth) der container!!

Mehrere "container" verwende ich eigentlich nur weils schöner aussieht, sonst Blitzt des immer ein bischen auf wenn in den alten geladen wird!

Alles ist im ersten Schlüsselbild,den zweiten Frame kannst Dir eigentlich sparen!!

ladebalken und textfeld befinden sich in einem Mc, den kannst hinziehen auf der Bühne wo es Dir am besten gefällt !!
im externen brauchst nix zu machen!!

so hab ich noch was vergessen
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 08-05-2004, 17:51   #11 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
hi nochmal...

"Alles ist im ersten Schlüsselbild,den zweiten Frame kannst Dir eigentlich sparen!!"

aber muss nicht der hauptfilm erst geladen werden, bevor man ins erste keyframe des hauptfilms kommt? muss der nicht ins 2. keyframe?

"ladebalken und textfeld befinden sich in einem Mc, den kannst hinziehen auf der Bühne wo es Dir am besten gefällt !!
im externen brauchst nix zu machen!!"

aha, aber nach der vorschau kommt ja die "eigentliche" swf ("film_gross.swf") im neuen fenster. muss ich wirklich nichts machen? erscheint der ladebalken ect. dann auch im neuen fenster (html mit eingebetteter swf), obwohl ich ihn da nie reingelegt hab?

nochwas: im ersten keyframe will ich ja erst den hauptfilm laden. dafür müsste der ladebalken etc. mittig sein. danach werden aber nur auf der rechten seite des hauptfilms ("filmbutton" oder gleich nach umbau, "container") die vorschau swf´s geladen. da wäre es natürlich schön, wenn der ladebalken nur auf der rechten seite, also über dem container mittig, erscheint. ist das möglich?

Du hast alle buttons zusammen mit dem ladebalken etc. in einem keyframe. meine buttons sind aber wild verteilt im hauptfilm und auf verschiedenen ebenen in alle möglichen mcs verschachtelt. ist das ein problem? muss ich auf die buttons nochwas draufprogrammieren, damit das erste script auch weiß, wo die einzelnen buttons liegen, die gemeint sind?

kann ich denn dann meinen filmbutton löschen, in den die swf´s bis jetzt geladen wurden? im moment hab ich dieses script auf jedem button:

on (release) {
loadMovie("extern1.swf", "_root.filmbutton");
}


Danke danke danke!

Geändert von lotta_svea (08-05-2004 um 17:57 Uhr)
lotta_svea ist offline   Mit Zitat antworten
Alt 08-05-2004, 18:01   #12 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Den Loader kann man auch so einstellen das der auch am anfang den Hauptfilm loadet!!

Die function für den loader kann man auch aus anderen Mc's ansprechen (respt. die Buttons kann man auch vom Hauptfilm aus in anderen mc's ansprechen!!) !!

des neue fenster erscheint ja erst wenn der loader fertig ist, kannst also den balken und textfeld im Hauptfim belassen!!

textfeld und anibalken kann mann auch per script verschieben!!

ich schau mal ob ich morgen ne neue Demo hinbekomme
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 08-05-2004, 18:06   #13 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
ok, vielen Dank nochmal.
ich werds jetzt mal ausprobieren. ich schreib Dir dann, ob es geklappt hat. wenn nicht, kann ich Dich mit weiteren fragen belästigen??? (freu Dich schonmal drauf, ich experte krieg es bestimmt wieder nicht hin...)
und schönes wochendende noch.
gruß,
lotta
lotta_svea ist offline   Mit Zitat antworten
Alt 08-05-2004, 18:20   #14 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Yo! Dir auch ein schönes wochendende

Kannst mich ruhig belästigen, dafür bin ich ja da
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 08-05-2004, 18:40   #15 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 47
und da bin ich schon wieder.

klappt natürlich nicht. das ist anscheinend noch ein bißchen zu hoch für mich...
wenn es Dir nicht allzuviel arbeit macht, könntest Du mir das irgendwann mal auf meine dateien umschreiben die ich gepostet habe und nochmal anhängen, damit ich weiß, wo mein fehler liegt? das wäre echt nett!
ist mir richtig unangenehm, so viel hilfe in anspruch zu nehmen, für umsonst...
dankeschön
lotta
lotta_svea 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 02:28 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele