AS2.0で、指定ラベルに本当に遷移できたかどうかをチェックする方法を記載します。
これはラベルが存在しているのかどうかをチェックするのに使えます。


サンプルコード

ラベルに遷移するときは以下の関数を使用します。(gotoAndStopの例)
戻り値がfalseのとき、恐らくラベルは存在しないのでしょう。
再生ヘッド(カレントフレーム)の変化を見ているだけですので、
同じラベルに連続で2回遷移する場合もfalseを返してしまいます。

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
/**
 *  指定ラベルに飛びます.
 * @since       2010.10.18
 * @version     2011.01.08
 *
 * @param       avLabel     遷移先のラベル
 * @return      再生ヘッド(カレントフレーム)に変化がないときfalseを返します.
 * */
public function TimelineGoto( avLabel : String ) : Boolean {        
‌ 
    // ====== カレントフレーム(再生ヘッド)を退避しておく
    var myCurrentFrame  : Number    = this._currentframe;
‌ 
    // ====== 指定ラベルへ遷移
    this.gotoAndStop( avLabel );
‌ 
    // ====== 再生ヘッドに変化ないならラベル遷移していない!!
    if ( myCurrentFrame == this._currentframe ) {
        return ( false );
    }
‌ 
    // ====== 正常に遷移できました
    return( true );
}
‌ 
このコードは CodePublisher で生成しています

コメント

  • コメントはまだありません。

コメントを投稿する

コメントを投稿する場合は以下に注意してください。

・記事に関係する内容であること
・特別な理由がない限り「全体公開」であること

これさえ守っていただければどんな内容でも投稿可能です。
皆様の質問やコメントは他の方の問題解決に繋がりますのでご協力ください。

コメント投稿フォーム
名前
メール
URL
コメント
閲覧制限

コメントを投稿するには、以下の問題に答えてください。
問題:「このサイト名をカタカナ六文字にして入力してください」