ERLEDIGT
JA
JA
ANTWORTEN
12
12
ZUGRIFFE
739
739
EMPFEHLEN
-
Hallo,
geht das denn? Den Film zu laden ist bisher kein Problem. Nun möchte ich den Film, sagen wir er ist 120 Bilder lang, von verschieden Buttons an verschiedenen Frames starten lassen. Also bei Button X läuft Bild 1- Bild 10 u.s.w.
Nur hab ich im Moment keinen Plan ob das überhaupt geht und wenn ja wie das gehen soll... Steh grad voll aufm Schlauch...
Kann mir jemand weiterhelfen?!
GrußWindows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
Hi!
Natürlich geht das. Gleich wie du es auf der Hauptzeitleiste machst.
z.B.: _root.container.gotoAndPlay ("Zielframe");
in dem Fall soll container dein MC sein der die swf reinlädt.
Greetz
Roli
-
Hallo,
da es bei Bildern auch so ist, dass die erst komplett geladen sein müssen, hab ich jetzt mal folgendes probiert:
Er lädt mir auch den Film, platziert ihn richtig- aber er fängt die Animation immer von vorne an und springt nicht an den gewünschten Frame und spielt ihn da ab... Ausserdem muss ich nach > -1 abfragen, sonst geht er mir gar nicht rein...PHP-Code:function klickeventSub(issue, linkname, fileParent, linkParent){
_root["linkSub"+issue].onRelease = function(){
_root.attachMovie("menuback_grey", "menuback_grey", 109);
_root.menuback_grey._x = 0;
_root.menuback_grey._y = 101;
setFileName(_root["linkSub"+issue].linkSubText.text, fileParent);
createLeftMenuLink(_root["linkSub"+issue].linkSubText.text, linkParent);
if(_root["linkSub"+issue].linkSubText.text == "MeinButton"){
_root["linkSub"+issue].linkSubText.text = linkname;
_root.createClassObject(Label, "Bild", 1001);
_root["Bild"].text = "";
_root["Bild"].createEmptyMovieClip("MCAni", 4002);
_root["Bild"]["MCAni"]._x = 201;
_root["Bild"]["MCAni"]._y = 211;
_root["Bild"]["MCAni"].loadMovie("./pics/animation.swf");
_root["Bild"].onEnterFrame = function() {
if (_root["Bild"]["MCAni"].getBytesLoaded() > -1 && _root["Bild"]["MCAni"].getBytesLoaded() >= _root["Bild"]["MCAni"].getBytesTotal()) {
_root["Bild"]["MCAni"].gotoAndPlay(120);
delete this.onEnterFrame;
}//end if
} //end onEnterFrame
}//end if
}//end function on Press
Ich hoffe es ist nachzuvollziehen?
GrußGeändert von Orphelina (25.08.05 um 10:22 Uhr)
Windows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
Hallo,
ich hab weiter fleissig rumprobiert aber bin immer noch nicht weiter. Ausser dass meine Ausgabe von gotoAndPlay "undefined" ist- warum auch immer?
Ich blick das nicht. Dabei lade ich das Ding doch vor? WArum ist mein Frame undefined?
GrußWindows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
Okay,
nach noch mehr probieren, kopieren, Auslagern der onEnterFrame- Funktion, der Erkenntnis das man den Frame so gar nicht ausgeben kann, funktioniert es jetzt dass er zu dem jeweiligen Frame springt.
Weiteres Problem. Ich habe mehrere Buttons, die die Animation an verschiedenen Frames anspricht. Ich kann aber eigentlich nur einen Button drücken und danach geht er nicht mehr durch die if- Abfragen sondern schmeisst mich gleich über den else raus.
Wie kann ich es hinbekommen, dass ich beliebige Buttons beliebig oft drücke und immer das richtige passiert?!
Hier nochmal der aktuelle Codeausschnitt:
Hier die ausgelagerte FunktionPHP-Code:function klickeventSub(issue, linkname, fileParent, linkParent){
//Hier werden das Bild und der MovieClip erzeugt in den die Animation geladen wird
_root.createClassObject(Label, "Bild", 1001);
_root["Bild"].text = "";
_root["Bild"].createEmptyMovieClip("MCAni", 1002);
_root["Bild"]["MCAni"]._x = -800;
_root["Bild"]["MCAni"]._y = -800;
_root["Bild"]["MCAni"].loadMovie("./pics/HauptAnimation.swf");
var frameNumber:Number;
_root["linkSub"+issue].onRelease = function(){
_root.attachMovie("menuback_grey", "menuback_grey", 109);
_root.menuback_grey._x = 0;
_root.menuback_grey._y = 101;
setFileName(_root["linkSub"+issue].linkSubText.text, fileParent);
createLeftMenuLink(_root["linkSub"+issue].linkSubText.text, linkParent);
if(_root["linkSub"+issue].linkSubText.text == "Button1"){
_root["linkSub"+issue].linkSubText.text = linkname;
frameNumber = 1;
animationEnterFrame("Bild", "MCAni", frameNumber);
}//end if
if(_root["linkSub"+issue].linkSubText.text == "Button2"){
_root["linkSub"+issue].linkSubText.text = linkname;
frameNumber = 11;
animationEnterFrame("Bild", "MCAni", frameNumber);
}//end if
if(_root["linkSub"+issue].linkSubText.text == "Button3"){
_root["linkSub"+issue].linkSubText.text = linkname;
frameNumber = 100;
animationEnterFrame("Bild", "MCAni", frameNumber);
}//end if
else{trace(":::::::::::::::: FÄHLER :::::::::::::::");}
}//end onRelease
PHP-Code:function animationEnterFrame(givenLabel, givenImg, myFrame){
_root[givenLabel].onEnterFrame = function() {
if (_root[givenLabel][givenImg]._width > 3 && _root[givenLabel][givenImg]._height > 3) {
_root[givenLabel][givenImg]._x = 201;
_root[givenLabel][givenImg]._y = 211;
_root[givenLabel][givenImg].gotoAndPlay(myFrame);
}//end if
else{
trace("+#+#+#+#+# Fehler beim Laden der Animation +#+#+#+#+#");
_root[givenLabel][givenImg]._x = -800;
_root[givenLabel][givenImg]._y = -800;
}//end else
delete this.onEnterFrame;
} //end onEnterFrame
}//end function animationEnterFrame
Windows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
Hi,
ich kann das mangels Flash im Moment nicht testen (der Code ist mir grad zu unübersichtlich, um ihn im Kopf zu debuggen
) - aber eins fällt mir auf:
Wenn Du schon perEinen MouseHandler definierst, warum greifst Du darin nicht per "this" auf Dein Objekt ( _root["linkSub"+issue] ) zu, sondern referenzierst es immer wieder über den Array-Zugriffsoperator? Das wird nicht unbedingt die Uesache Deines Fehlers sein, ist aber immer wieder eine Quelle schwer zu entdeckender (und zu korrigierender) Bugs.Code :1
_root["linkSub"+issue].onRelease = function(){
Gruß
.
-
Guten Morgen,
danke erstmal für den Tipp!
Ich hatte bisher irgendwie immer wieder Probleme, wenn ich mit this auf etwas zugreifen will- oft hat das gar nicht funktioniert...
Gruß
Button 1und 2 funktionieren, aber bei Button 3 passiert nichts, er geht zwar auch in die Methode, aber geht gleich in den Else- Fall. Klicke ich aber zuerst Button 3 wird die Animation abgespielt.
Trotzdem bringt er auch immer "Fähler"- Fall, geht aber trotzdem in die Animation bei Button 1 und 2... Aber eben nur wenn ich zuerst 1 und dann 2 drücke... Wenn ich von hinten anfang tun 1 und 2 nicht. Das versteh ich nicht...Geändert von Orphelina (26.08.05 um 09:23 Uhr)
Windows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
Hi,
kannst Du die Datei einmal posten (die .as-Datei und die dazugehörige .fla)? Wenn ich das ganze lauffähig vor mir habe, lässt sich sicher mit ein paar Trace-Aktionen schnell herausfinden, wo der Hund begraben liegt.
Gruß
.
-
Hallöchen,
Leider sind die Dateien zu gross und sind für nen Kunden, also darf ich da leider auch nichts rausgeben...
Blöde Sache, ich weiss...
GRußWindows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
...
Aber ich hab inzwischen rausgefunden, warum er mir nichts macht wenn man den letzten Button ausgibt. In meiner ausgelagerten Funktion frag ich nach dem onEnterFrame nach den geladenen Bytes ab- und wenn man das letzte anklickt meint er "undefined"- also wohl keine Bytes da, also macht er da auch nichts.
Wenn ich wild auf die verschiedenen Buttonsklicke, funktioniert das letzte zwischendurch, aber dafür sind die anderen dann auch mal undefined und tun dann wieder dann wieder nicht- aber ich konnte bisher kein Schema feststellen.
Aber wo konnten denn meine Bytes verloren gehen? Hängt das mit dem onEnterFrame zusammen oder sowas?
GrußWindows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
Hi,
nee - verloren gehen sollte da nichts. Ich glaube eher, dass das übergebene Objekt (der Clip, von dem die geladenen Bytes abgefragt werden) teilweise undefiniert ist. Überprüf doch mal mit einer trace-Aktion, ob alle Referenzen, die Du der Funktion "animationEnterFrame" übergibst, auch gültig sind.
Gruß
.
-
Sooooooo,
nachdem ich diese Schleife eingebaut habe in die onRelease- Funktion.
Funktioniert es jetzt einwandfrei- obwohl die MCs mit denen ich arbeite in der Ebene 301 und 302 liegen.... Öhm ich versteh das zwar nicht so ganz, aber es scheint erstmal zu funktionieren...PHP-Code:for (var i in _root) {
if (typeof(_root[i]) == "movieclip" && _root[i].getDepth() <= 10 && _root[i].getDepth() >= 0) {
_root[i].removeMovieClip();
}
}
Gruß
EDIT: Nun ja, das mit dem einwandfrei nehm ich zurück. Beim Testen ist mir aufgefallen, dass nur wenn ich in meiner Navigation einen bestimmten Pfad gehe, das mit der Animation klappt, sobald ich vorher was anderes geklickt habe, wird die Animation nicht geladen... Menno....
EDIT2: Weiss den keiner Rat? Ich versteh nicht warum die Animation nicht mehr geladen wird, da sie ja immer dem gleichen Muster folgt. Das dürfte ja egal sein, ob ich zuerst einen anderen Pfad geh... Woran könnte das denn liegen?Geändert von Orphelina (29.08.05 um 13:07 Uhr)
Windows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
-
Hallo,
nur fürs Protokoll, ich hab den kompletten Code umgeschrieben und dann hat es einwandfrei funktioniert. Die obigen Tipps hab ich auch bedacht. Das mit dem hinspringen war dann nicht so schwer... Irgendwie mochte er weder die Stelle noch die Dinge die drumherum passiert sind.
Ich wollte das Thema nur abschliessen.
Danke und GrußWindows XP Prof SP2, Intel Pentium 3,2 GHz 1GB RAM
Flash 8 Prof (8.0), Flash Player 9
Mozilla Firefox 2.0, IE 7.0, Opera 9.02
Ähnliche Themen
-
FLV-Parameter von einem mit Loadmovie geladenen Film!
Von kelmi im Forum Flash PlattformAntworten: 4Letzter Beitrag: 17.05.06, 17:26 -
swf-film in mc laden per loadMovie() + filmsteuerung
Von matschomaen im Forum Flash PlattformAntworten: 25Letzter Beitrag: 20.11.05, 18:39 -
Externes swf laden und in einem bestimmten Frame starten
Von Djingeringe im Forum Flash PlattformAntworten: 1Letzter Beitrag: 03.05.05, 17:26 -
loadMovie in Bestimmten Frame
Von themonk im Forum Flash PlattformAntworten: 35Letzter Beitrag: 02.02.05, 21:22 -
mit loadmovie geladenen film anhalten (mx)
Von paraphan im Forum Flash PlattformAntworten: 4Letzter Beitrag: 27.08.02, 18:43





Zitieren
Login





