Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-02-2005, 14:03   #1 (permalink)
Steph Hawkins
 
Benutzerbild von Nick-Viper
 
Registriert seit: Nov 2002
Ort: Da wo ich es möchte
Beiträge: 85
Unhappy Was mache ich daran falsch????????

Hallo alle zusammen.

Ich hab da ein kleines problem.Hoffe ihr könnt mir kurz helfen.So wie ich mich kenne ist es wahrscheinlich nur ne kleinigkeit,aber ich komme nicht drauf.

Erklärung:
Ich habe auf meiner HZL eine AS ebene.In dieser AS steht natürlich mein AS.
In diesem AS attache ich ein UntermenüMC (in einen Container logischerweise).
In diesem UntermenüMc liegen zwei Buttons.
Wenn ich auf einen der zwei Button klicke,möchte ich,das ein swf-file geladen wird und in einen Container auf der HLZ platziert wird.Und genau das bekomme ich nicht hin.

Kurzform:
AS auf HLZ; 2Buttons in MC;MC wird attacht;Die 2 Buttons aus dem attachten Mc sollen per onrelease() ein Film in einen Container auf der HLZ laden.

Habe mir schon das Tut von Rena durchgelesen,aber das hilft mir nicht wirklich weiter.
Vielleicht weis ja einer von euch,was ich falsch mache.
Ich poste mal die Scripts.

Dieses Script liegt in der AS-Ebene in der HLZ:
Code:
//Script zum laden des swf-file,welches dann beim verlassen wieder Rückwärts----------
gespielt wird
control_Budda = new Object(); 
control_Budda.watch('neu', function (id, alterWert, neuerWert) { 
    if (neuerWert != alterWert) { 
        if (alterWert != undefined) { 
            _level0.Ala.stop(); 
            _level0.Ala.onEnterFrame = function() { 
                if (this._currentframe != 2) { 
                    this.gotoAndStop(this._currentframe-1); 
                } else { 
                    _level0.Ala.loadMovie(control_Budda.neu+".swf"); 
                    delete (this.onEnterFrame); 
                } 
            }; 
        } else {
            _level0.Ala.loadMovie(neuerWert+".swf");
		} 
    } 
    return neuerWert; 
});
//Ende des Scripts-----------------------------
//Container für das zu ladende swf-file (Soll auf der HLZ liegen)---------
_level0.createEmptyMovieClip("Ala", 4); 
_level0.Ala._y = 152; 
_level0.Ala._x = 248;
//Ende des Containers-----------------------------------
//Aufruf des Buttons im Untermenü MC
NewsUnterMC.NewsUnterInstanz.onRelease = function() { //NewsUnterMC ist der names des MC-----Und NewsUnterInstanz der Instanzname-------
    control_Budda.neu = "NewsUnterFenster"; //Das zu ladende swf-File
};

Bitte Helft mir.Ihr wisst doch sicher woran es liegt.
Danke schonmal.
__________________
MFG

---------------------------------------
Ich weis nicht,warum Wissenschaftler seit ewigkeiten nicht darauf kommen,wie unser Universum entstanden ist.
Mein bester Kumpel und ich,sind innerhalb von 2,5 Stunden darauf gekommen und das mit einer Flasche Bacardi.
*lächerlich diese Möchtegerngenies*
Nick-Viper ist offline   Mit Zitat antworten
Alt 23-02-2005, 06:49   #2 (permalink)
Steph Hawkins
 
Benutzerbild von Nick-Viper
 
Registriert seit: Nov 2002
Ort: Da wo ich es möchte
Beiträge: 85
Ok.Vielleicht nochmal anders erklärt.

Wie Schaffe ich es,mit einem Button in einem MC,

Script das in dem MC steht:
Code:
control_Budda = new Object(); 
control_Budda.watch('neu', function (id, alterWert, neuerWert) { 
    if (neuerWert != alterWert) { 
        if (alterWert != undefined) { 
            _root.Ala.stop(); 
            _root.Ala.onEnterFrame = function() { 
                if (this._currentframe != 2) { 
                    this.gotoAndStop(this._currentframe-1); 
                } else { 
                    _root.Ala.loadMovie(control_Budda.neu+".swf"); 
                    delete (this.onEnterFrame); 
                } 
            }; 
        } else {
            _root.Ala.loadMovie(neuerWert+".swf");
		} 
    } 
    return neuerWert; 
});

this.NewsUnterInstanz.onRelease = function(){ 
    control_Budda.neu = "NewsUnterFenster";
};
auf dieses Script(Container) in der Hauptzeitleiste zu zugreifen?

Script in der Hauptzeitleiste:
Code:
_level0.createEmptyMovieClip("Ala", 4); 
_level0.Ala._y = 152; 
_level0.Ala._x = 248;

Vieleicht ist das ja verständlicher.
Bitte,ich brauch echt eure hilfe.
__________________
MFG

---------------------------------------
Ich weis nicht,warum Wissenschaftler seit ewigkeiten nicht darauf kommen,wie unser Universum entstanden ist.
Mein bester Kumpel und ich,sind innerhalb von 2,5 Stunden darauf gekommen und das mit einer Flasche Bacardi.
*lächerlich diese Möchtegerngenies*

Geändert von Nick-Viper (23-02-2005 um 08:55 Uhr)
Nick-Viper ist offline   Mit Zitat antworten
Alt 23-02-2005, 10:35   #3 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
ActionScript:
  1. _level0.Ala.loadMovie(control_Budda.neu+".swf");
Setz dir mal einen trace vor den loadMovie und check, was denn hier in control_Budda.neu überhaupt steht...

Und ich vermute mal, dass dein Watcher einen falschen Parameter bei der Callback-Funktion hat. Normalerweise gibt man da nur den Funktionsnamen an und setzt die Funktion selbst irgendwo anders im Script...
  Mit Zitat antworten
Alt 23-02-2005, 10:53   #4 (permalink)
Steph Hawkins
 
Benutzerbild von Nick-Viper
 
Registriert seit: Nov 2002
Ort: Da wo ich es möchte
Beiträge: 85
Danke für deine rasche antwort.
Also mit dem trace bekomm ich nur irgenwelche Fehlermeldungen.
Zumindest kann ich da nichts brauchbares rausfinden.

Aber ich hab jetzt die ganze zeit im I-net nachgelesen.Und ich glaube,das ich das Problem gefunden habe.
Und zwar hab ich ja diesen Button den ich ansprechen will, in dem MC.
Jetzt hab ich gelesen,das ich den Button in dem MC von der HLZ garnicht ansprechen kann?
Stimmt das?


Ps.Weil wenn ich mit dem Selben Script,den button auf die HLZ lege,dann funzt das.
__________________
MFG

---------------------------------------
Ich weis nicht,warum Wissenschaftler seit ewigkeiten nicht darauf kommen,wie unser Universum entstanden ist.
Mein bester Kumpel und ich,sind innerhalb von 2,5 Stunden darauf gekommen und das mit einer Flasche Bacardi.
*lächerlich diese Möchtegerngenies*
Nick-Viper ist offline   Mit Zitat antworten
Alt 23-02-2005, 12:18   #5 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Doch!
Du kannst natürlich Button in mc's ansprechen (nur nicht umgekehrt).
Du musst Deinem Button doch nur anklicken und ihm einen Instanznamen verpassen, somit kannst Du ihn dann ansprechen.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 23-02-2005, 12:20   #6 (permalink)
Steph Hawkins
 
Benutzerbild von Nick-Viper
 
Registriert seit: Nov 2002
Ort: Da wo ich es möchte
Beiträge: 85
Von der Hauptzeitleiste funzt das aber bei mir nicht.
Ich hab dem Button ja einen Instanznamen gegeben.Aber es passiert nichts.

Ich spreche ihn mit diesem Befehl von der HLZ an.Aber es tut sich nichts.

Code:
MCwodieInstanzist.ButtonInstanz.onRelease = function(){ 
    control_Budda.neu = "NewsUnterFenster";
};
Das Problem dabei ist wahrscheinlich,das der Button in dem Mc nicht auf frame 1 liegt,sondern auf 5.
Aber ich kann das nicht anders machen.ich brauche das so.
__________________
MFG

---------------------------------------
Ich weis nicht,warum Wissenschaftler seit ewigkeiten nicht darauf kommen,wie unser Universum entstanden ist.
Mein bester Kumpel und ich,sind innerhalb von 2,5 Stunden darauf gekommen und das mit einer Flasche Bacardi.
*lächerlich diese Möchtegerngenies*

Geändert von Nick-Viper (23-02-2005 um 12:24 Uhr)
Nick-Viper ist offline   Mit Zitat antworten
Alt 23-02-2005, 13:48   #7 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
Das Problem dabei ist wahrscheinlich,das der Button in dem Mc nicht auf frame 1 liegt,sondern auf 5.
Dann kannst du den release-Event natürlich auch erst auf Frame 5 setzen, vorher kann Flash den Objektpfad ja gar nicht zusammensetzen...

Und check mal den Objektpfad von "control_Budda" im Event.
  Mit Zitat antworten
Alt 23-02-2005, 15:06   #8 (permalink)
Steph Hawkins
 
Benutzerbild von Nick-Viper
 
Registriert seit: Nov 2002
Ort: Da wo ich es möchte
Beiträge: 85
Der Objektpfad passt.Und den Relaese-Event will ich nicht auf Frame 5 haben sondern in meiner AS Ebene auf der HLZ.
ok.Ich hab mir das ganze jetzt noch mal durch den kopf gehen lassen, und bin darauf gekommen,das es sicherlich besser ist, das Komplette Script auf die HLZ in die AS Ebene zu schreiben und dann von da auf den Button zu zugreifen.
Sprich es sieht dann so aus.

Script auf der Hauptzeitleiste:
Code:
control_Budda = new Object(); 
control_Budda.watch('neu', function (id, alterWert, neuerWert) { 
    if (neuerWert != alterWert) { 
        if (alterWert != undefined) { 
            _root.Ala.stop(); 
            _root.Ala.onEnterFrame = function() { 
                if (this._currentframe != 2) { 
                    this.gotoAndStop(this._currentframe-1); 
                } else { 
                    _root.Ala.loadMovie(control_Budda.neu+".swf"); 
                    delete (this.onEnterFrame); 
                } 
            }; 
        } else {
            _root.Ala.loadMovie(neuerWert+".swf");
		} 
    } 
    return neuerWert; 
});

_level0.createEmptyMovieClip("Ala", 4); 
_level0.Ala._y = 152; 
_level0.Ala._x = 248;

this.NewsUnterInstanz.onRelease = function(){ 
    control_Budda.neu = "NewsUnterFenster";
};
Das Problem was allerdings jetzt besteht ist,wie muss der Pfad für das onRelease-Event zum MC (wo der Button in Frame 5 ist) heisen?
Normal doch so oder?

Code:
NamedesMC.NamederButtonInstanz.onRelease = function(){ 
    control_Budda.neu = "das zu ladende File";
};
Nur gibt dieser Code ja nicht den Frame 5 (auf dem der Button liegt) an.
Wie kann ich da noch den Zielframe angeben?
Wie muss ich das dann machen?
Weil so wie es jetzt ist,also mit MCname.ButtonInstanz.onRelease funzt es nicht.
__________________
MFG

---------------------------------------
Ich weis nicht,warum Wissenschaftler seit ewigkeiten nicht darauf kommen,wie unser Universum entstanden ist.
Mein bester Kumpel und ich,sind innerhalb von 2,5 Stunden darauf gekommen und das mit einer Flasche Bacardi.
*lächerlich diese Möchtegerngenies*

Geändert von Nick-Viper (23-02-2005 um 15:09 Uhr)
Nick-Viper ist offline   Mit Zitat antworten
Alt 27-02-2005, 07:12   #9 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Man kann nur den jeweiligen Button ansprechen, wenn er sich auch im aktuellen Frame befindet.
Da Flash ja nicht die ganze Datei auswendig "kennt".
Also wenn Du gerade auf Frame 5 bist (und somit Deinen Button siehst), müste es ja klappen.
__________________
ERROR: Signature is too large

Geändert von rendner[i] (27-02-2005 um 07:15 Uhr)
rendner[i] 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 19:06 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele