1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

AS3: als Variablen definierte Buttons funktionieren nicht...

Dieses Thema im Forum "PHP & Co." wurde erstellt von Shebsl, 12.06.09.

  1. Shebsl

    Shebsl Schöner von Nordhausen

    Dabei seit:
    12.11.05
    Beiträge:
    317
    Hallo,

    ich hätte gerne, dass beim Klick auf einen Menüpunkt meiner Seite ein MC_beliebig1 an der y-achse aus einer Maske heraus in den Bereich der Stage getweent wird und beim Klick auf einen beliebigen anderen Menüpunkt der MC_beliebig1 wieder heraustweent und ein MC_beliebig2 reingetweent wird.
    (hier ein verdeutlichendes Beispiel: http://www.blackmail.de/v3.0/index.html)

    Das bisherige Skript sieht folgendermassen aus:

    ActionScript 3:

    import fl.transitions.Tween;
    import fl.transitions.easing.*;

    /*----- position der linkflächen -----*/

    hotspots.x = 780;
    hotspots.y = 170;

    /*------------------------------------*/

    /*----- position des (grafischen) Buttons_mc -----*/

    menu.x = 740;
    menu.y = 154;

    /*------------------------------------*/

    /*----- anfangsposition der auf ButtonClick zu animierenden Elemente -----*/

    about_cont.y = 780;
    websites_cont.y = 780;

    /*------------------------------------*/

    /*----- verlinkung der Buttons -----*/

    hotspots.hit_about.buttonMode = true;
    hotspots.hit_about.addEventListener(MouseEvent.ROLL_OVER, buttonOverAbout);
    hotspots.hit_about.addEventListener(MouseEvent.ROLL_OUT, buttonOutAbout);
    hotspots.hit_about.addEventListener(MouseEvent.CLICK, Click);

    hotspots.hit_websites.buttonMode = true;
    hotspots.hit_websites.addEventListener(MouseEvent.ROLL_OVER, buttonOverWeb);
    hotspots.hit_websites.addEventListener(MouseEvent.ROLL_OUT, buttonOutWeb);
    hotspots.hit_websites.addEventListener(MouseEvent.CLICK, Click);

    function buttonOverAbout(e:MouseEvent):void
    {
    menu.about.gotoAndPlay("over");
    }

    function buttonOutAbout(e:MouseEvent):void
    {
    menu.about.gotoAndPlay("out");
    }

    function buttonOverWeb(e:MouseEvent):void
    {
    menu.websites.gotoAndPlay("over");
    }

    function buttonOutWeb(e:MouseEvent):void
    {
    menu.websites.gotoAndPlay("out");
    }

    /*------------------------------------*/


    var about:about_cont = new about_cont();
    var websites:webites_cont = new websites_cont();

    hotspots.hit_about.mcTarget = about;
    hotspots.hit_websites.mcTarget = websites;

    var currentPage:MovieClip;
    var nextPage:MovieClip;


    function Click(e:MouseEvent):void
    {
    nextPage = e.currentTarget.mcTarget;
    var currentPageOff:Tween= new Tween(currentPage, "y", Strong.easeInOut, 270, 715, 2, true);
    currentPageOff.addEventListener(TweenEvent.MOTION_FINISH, nextPageIn);
    }

    function nextPageIn(e:MouseEvent):void
    {
    currentPage = nextPage;
    var nextPageIn:Tween= new Tween(nextPage, "y", Strong.easeOut, 715, 270, 2, true);
    }





    Also: beim Klick auf "about" soll der MC "about_cont" (anfangs durch AS auf einen nicht sichtbare Bereich jenseits der Stage positioniert) eingetweent werden.
    Beim Klick auf "websites" soll "websites_cont" eingetweent, und "about_cont" ausgetweent werden.

    Leider enthält obiges Skript zig Fehlermeldungen:

    Die Fehlermeldungen:
    1046: Typ wurde nicht gefunden oder war keine Kompilierungszeit-Konstante: about_cont.
    1046: Typ wurde nicht gefunden oder war keine Kompilierungszeit-Konstante: webites_cont.

    1120: Zugriff auf eine nicht definierte Eigenschaft TweenEvent.

    1180: Aufruf einer möglicherweise undefinierten Methode about_cont.

    1180: Aufruf einer möglicherweise undefinierten Methode websites_cont.


    Wie krieg ich das gelöst?

    P.S.: Falls ihr die gesamte fla benötigt, schreibt mir ne PM, dann schick ich sie euch.
     

Diese Seite empfehlen