• ベストアンサー

配列で呼び出しMCやボタンにしたい

wynnjpの回答

  • wynnjp
  • ベストアンサー率71% (5/7)
回答No.1

ブラウザ上で見ただけで動かしていないので他にも原因があるかもしれませんが、下記の部分は最低でも直す必要があります。 _root.createEmptyMovieClip("field"+i, i); _root.field+icreateTextField("my_txt"+i, i, 20, i*30+20, 100, 22);             ↓ _root.createEmptyMovieClip("field"+i, i); _root["field"+i].createTextField("my_txt"+i, i, 20, i*30+20, 100, 22); fieldが定数から変数に扱いが変わっていること、「.」で普通につなげる書き方の中で変数の足し算をできないという2つの原因の対応です。

popepon
質問者

補足

ご解答有難うございます。 大変参考になりました。 テキストフィールド自体は表示されませんでしたが、 デバッガで無事1個づつ格納されたのが確認できました。

関連するQ&A

  • 配列の並べ替えのやりかたを教えてください

    適当に 5,1,3,2,4,6 と書かれたテキストがあるとして、 これらの数字を大きい順に並べかえるにはどう 記述すればいいか教えていただけないでしょうか? もともとの並びから任意の数字を参照するところまでは わかりました。よろしくお願いします。 ================================================================ loadLV = new LoadVars(); //LoadVarsオブジェクトを作成 ranking=Array //配列を用意 loadLV.onData = function(data){ ranking = data.split(","); //コンマ区切りでデータを配列 trace("「" + ranking[0] + "」"); //5が出力されます }; loadLV.load("ranking.txt"); //テキストの読み込み

    • ベストアンサー
    • Flash
  • 特定できない配列の受け渡し

    いつもお世話になってます。 配列の基礎部分が理解出来ていないので投降させて頂きました。 やりたい事 外部から取得した不特定多数の文字列 (例えばカンマ切りで 0,ab,cde,23e,ss,f,fre など) を配列として格納し、それを個別に呼び出す方法。 具体的に応用したい事 その配列から呼び出したデータを元に myload = new LoadVars(); myload.load("mydomain/配列から抜き出した値.txt"); myload.onData = function(moji) {list = moji;} 等で、テキストデータをそれぞれ読み込み、 テキストインスタンスでそれぞれ表示させる その際上記で言えば変数の myload moji list をそれぞれ変える必要があると思うのですが 具体的にどの様にすれば良いでしょうか? moji++等で良いのでしょうか? 要は取得した文字列から 読み込みファイルへのパスを取得して それぞれ読み込んで、テキストで表示させたい という感じです。 不明な点、補足要求あればお願い致します。

    • ベストアンサー
    • Flash
  • 配列の呼び出し方について

    制作環境:CS3 配列を作成し、変数を使って呼び出そうとするとうまくいきません。 ■親フレーム var mojimc1 = [0,1,2,"文章"]; var moji_txt = ""; ■下のムービークリップ(インスタンス名:mc1)     on (release) {       var nam = _name;       this._parent.moji_txt =this._parent["moji" + nam + "[3]" ];       trace(this._parent.moji_txt);     } とすると、traceの結果が、「undefined」になります。 変数を使わず   this._parent.moji_txt =this._parent.mojimc1[3]; とすると問題無く「文章」となります。 書き方が間違ってるのでしょうか?どなたか、よろしくおねがいします。

    • ベストアンサー
    • Flash
  • 【ActionScript】テキストフィールドを生成、文字サイズを変えたい

    FLASH8(Win-XP)使用者です。 テキストフィールドを生成、外部ファイルから文字を読み込んで、文字サイズを変えたいのですが思うようにいきません。 <例> moji = "初期の文字列"; //テキストフィールド生成 _root.createTextField( "my_TxFld", 0, 0, 0, 200, 50 ); my_TxFld.text = moji; my_TxFld.border = true; //テキストサイズ指定(1) myTxFmt = new TextFormat(); myTxFmt.size = 50; my_TxFld.setTextFormat(myTxFmt ); //テキストを流し込み my_lv = new LoadVars(); my_lv.onLoad = function(success){ _root.my_TxFld.text = my_lv.menu1; (2) }; my_lv.load("data.txt"); 上記ですと外部テキストは大きくならず、ダウンロード完了までの一瞬「初期の文字列」が大きな文字で表示されるだけです。 (1)を(2)に入れると正しく表示されるわけですが、何度もダウンロードする場合、その都度設定するのは非効率です。 一度の文字サイズ設定で何度ダウンロードしてもサイズが変わらないやり方はないものでしょうか。 お詳しい方、よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • 配列を抜き出し新しい配列を作りたい

    いつも参考にさせて頂いています。 今あるボタンAに function sortFunc(a, b) { return a.ID-b.ID; } hoge = new Array(); hoge.push({ID:_root.g1, a:"○○", b:"mc_maru"}); hoge.push({ID:_root.g2, a:"△△", b:"mc_sankaku"}); hoge.push({ID:_root.g3, a:"□□", b:"mc_shikaku"}); hoge.sort(sortFunc); // 結果 { } for (var i = hoge.length; i>=0; i--) { trace(hoge[i].ID+hoge[i].a+hoge[i].b); this.key_text.text +=(("\r")+hoge[i].a); } } このような配列の並び替えをしています。 _root.g1、2、3の点数を受けて点数の高い順に並び替えしてる 物を_key.textと言うダイナミックテキストに渡して表示させています。 この並び替えを利用し点数の高いものを二つを抜きだしたいのですが、 Array.slice()をどうやって使えばいいのか分からず困っています。 わかる方いらしたら教えて頂けないでしょうか?

    • ベストアンサー
    • Flash
  • 連想配列の配列の使い方

    C言語でいうところの構造体の配列(要素は"hoge"と"fuga"のみ)を perlで表現する場合、連想配列の配列にするのが一般的でしょうか? 以下の様なソースコードなのですが、perlらしさが失われている気がします。 perlらしく書くとしたらどう書くのが良いでしょうか? [ソース] @list; #この配列の要素に連想配列を入れる sub input{ #list.txtの中にはhogeとfugaの値がカンマ区切りで記入されている open(IN, "list.txt");  $i = 0; while ($xx = <IN>) { ($list[$i]{"hoge"}, $list[$i]{"fuga"}) = split /,/, $xx; $i++; } close(IN); } sub output{ for($i = 0; $i <= $#list; $i++){ print $list[$i]{"hoge"}, $list[$i]{"fuga"}; } }

    • ベストアンサー
    • Perl
  • createTextFieldを使う際にインスタンス名を動的に変える方法について

    お世話になります。 my_mc.createTextField("Menu_TXT",2,200,150,30,12) 通常、上記のようなスクリプトを書くとmy_mcにMenu_TXTというテキストフィールドを配置するのですが、これをMenu_TXT0~Menu_TXT10まで作成したい場合、for文を使って構築したいと思っています。 for文の構成は分かるのですが、インスタンス名を動的に変えたい場合の記述法が分かりません。例えば"Menu_TXT"+iとするとエラーですよね!?これをうまく書く方法はないでしょうか?

  • 読み込んだテキストを Split で分割する

    おはようごさいます。 過去の質問も色々拝見したのですが解決しなかったので、質問させていただきます。 以下の内容のテキストファイル、samp.txt を読み込み(改行コードはLFのみ)、 &txt = 123 456 789& それを split で改行で区切って、配列 my_ary に入れたいと思っております。(以下ソース) System.useCodepage = true; this.loadVariables("samp.txt"); this.onData = function() { my_ary = new Array(); my_ary = txt.split("\n"); }; stop(); デバッカで確認したところ“txt”の値は読み込めるのですが、 my_ary がいつも undefind になってしまいます。 何が原因なのかさっぱり分りません。 またこのソースでは、テキストを読み込むのに loadVariables を使っておりますが、LoadVars を使用して同じ事をした場合、my_ary 配列の値を LoadVarsオブジェクト名.onLoad = function(… 内以外から参照することは出来ますでしょうか? (例えば別のフレームやムービークリップなどから) 続けざまの質問で非常に恐縮ではありますが宜しくお願いいたします。 環境 OS:winXP Flash:MX2004

    • ベストアンサー
    • Flash
  • 外部テキストをsplitで分割する時

    宜しくお願いいたします。 外部テキストをsplitで分割しようと思うのですが・・。 スクリプトはこんな感じになっています。 System.useCodepage = true; // Shift-JISのテキストを読み込む設定に変更 myText01 = new LoadVars(); // 新規LoadVarsオブジェクトmyTextの作成 txt_file01 = "text/text001.txt"; // 外部テキストファイル名を変数txt_fileに代入 myText01.load(txt_file01); // 外部テキストファイルの読み込み _root.bp=t001 //変数 myText01.onLoad = function(ok) { if (ok) { // 外部テキストファイルを読み込んだときの処理 work_txt = myText01._root.bp.split("~"); と書いて、text/text001.txtというテキストのt001という行を"~"で分割したいのですが、うまくいきません・・・。 変数でオブジェクトを指定しているのが悪いと思うのですが、何か良い方法はありますか? 何分初心者なもので・・・。 説明がわかりづらいかもしれませんが、困ってしまっているので宜しくお願いいたします。

    • ベストアンサー
    • Flash
  • createEmptyMovieClipdeで作成したmcをASで動かす

    createEmptyMovieClipで空のムービークリップを作成し、 そのMCに画像を読み込ませた後、右に徐々に移動させたい場合、 どのようなスクリプトを書いたらよいのでしょうか。 for(i=0; i < 10; i++){ createEmptyMovieClip(["load_mc"+i],i); _root["load_mc"+i]._x = i*120; _root["load_mc"+i]._y = 20; _root["load_mc"+i].loadMovie(img); } _root["load_mc"+i]._x += 10; とすると、単純にx座標が10の所にMCが配置されるだけで、 モーショントゥイーンのように動いてくれません。。。。

    • ベストアンサー
    • Flash