0

まず、これが他の場所で回答されている場合はお詫び申し上げます-私が検索したことを信じてください! それには信じられないほど簡単な解決策が必要です。

私は、異なるフレームのいくつかの画像と、各フレームでgotoandStopすることになっているいくつかのボタンで構成されるMCを内部に持っています。シンプルなギャラリー。

私の計画は、サイトのギャラリーごとに MC を作成し、それぞれを独自のフレームに配置することです。メイン ナビゲーション ボタンは、MC が含まれるフレームに移動し、MC ボタンはそのギャラリー内を移動します。

しかし、ボタンは機能していません。

MC 内のボタン コードは次のとおりです。

on1_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_5); 

function fl_ClickToGoToAndStopAtFrame_5(event:MouseEvent):void 
{
    gotoAndStop("on1");

}

注: コードを簡単に確認できるように、ボタン インスタンスとフレームに同じラベルを付けました。ここには、数字の変更を除いて、それぞれ同じコードを持つ複数のボタンがあります。全部貼る必要は無いと思います。

どんな助けでも!さらに情報/コードが必要な場合は、お気軽にお問い合わせください。

どうもありがとう、

ジェイミー

4

1 に答える 1

1

あなたのボタンがメイン タイムラインにないことがわかりました。これを使用して、どこからでもメインのタイムラインにアクセスする非常に簡単な方法があります。

MovieClip(root).method();

だからあなたのために:

MovieClip(root).gotoAndStop(5);

また、楽しみのために、これは、非常に多くの異なる機能を使用するよりも、gotoAndStop アクションを使用して複数のボタンを設定するためのより迅速で適切な方法かもしれません。

ボタンに数字で終わる名前を付けます.. 例: goto1, goto6, goto9. 次に、これらを配列の一番上に追加します。

var buttons:Array = ["goto1","goto6","goto9"]; // <--- here

var i:String;
for each(i in buttons)
{
    this[i].addEventListener(MouseEvent.CLICK, goto);
}

function goto(e:MouseEvent):void
{
    var sb:SimpleButton = SimpleButton(e.target);
    var num:uint = uint(sb.name.substr(sb.name.length-1, 1));

    trace(num);
    gotoAndStop(num);
}
于 2011-04-27T22:49:27.810 に答える