- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:関数にカウント変数を随時代入したいのですが・・)
関数にカウント変数を随時代入したいのですが・・
このQ&Aのポイント
- インスタンス名「typ1」から「typ17」までの連番のムービークリップのボタンがステージに配置されている状態で、カウント変数を代入する関数を作成したいです。
- 現在のコードでは、ボタンを押した際にカウント変数が正しく代入されず、一律「18」が代入されています。
- ボタンの数が多いため、スクリプトを使用してカウント変数を正しく代入する方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
このプログラムですとiの値は、タイムライン変数として扱われるため forループが終了した時点の値(この場合18)が関数内でも使われる ことになります。このiの値をそれぞれのムービークリップインスタン スのタイムライン変数として格納してやれば、独立した変数として 扱えるようになります。 以下のように変更したらいかがでしょうか? for (i=1; i<18; i++) { this["tpy"+i].Para = i; this["tpy"+i].onRelease = function() { trace(this.Para); xChangeSelType (this.Para); }; }
お礼
できました! ムービークリップに変数を作成してやればよかったんですね。 ありがとうございました。