読者です 読者をやめる 読者になる 読者になる

炊きたてのご飯が食べたい

定時に帰れるっていいね。自宅勤務できるっていいね。子どもと炊きたてのご飯が食べられる。アクトインディでは積極的にエンジニアを募集中です。

( flash ) フラッシュ(flash)で同じタイムライン上に複数個のテキストフィールドを設定【createTextField】




同じタイムライン上に複数個のテキストをフィールドを設定しようと思って、
●テキストフィールド1

this.createTextField("result1", 1, 0, 0, 130, 20);
result1.border = true;
result1.borderColor = 0xCCCC00;
result1.textColor = 0x666600;
result1.type = "input";
result1.text = "テキストフィールド1";

●テキストフィールド2

this.createTextField("result2", 1, 0, 100, 130, 20);
result2.border = true;
result2.borderColor = 0xCCCC00;
result2.textColor = 0x666600;
result2.type = "input";
result2.text = "テキストフィールド2";

とそれぞれのフレームに記述したら、なんとテキストフィールド2が表示されない…。
createTextFieldの引数の指定に問題があるのだろうと思って色々と調べてみると、「第2引数の深度」が関係しているようだ。

createTextField ( "インスタンス名",深度, x座標, y座標, 横幅, 高さ )
第1引数 → 新しく作成されるテキストフィールドの名前
第2引数 → 新しく作成されるテキストフィールドの深度
第3引数 → 配置する x 座標
第4引数 → 配置する y 座標
第5引数 → 配置する幅
第6引数 → 配置する高さ

アクションスクリプトのコードを下記のように修正したら、無事表示されました。
●テキストフィールド1(変更なし)

this.createTextField("result1", 1, 0, 0, 130, 20);
result1.border = true;
result1.borderColor = 0xCCCC00;
result1.textColor = 0x666600;
result1.type = "input";
result1.text = "テキストフィールド1";

●テキストフィールド2(深度を2に変更)

this.createTextField("result2", 2, 0, 100, 130, 20);
result2.border = true;
result2.borderColor = 0xCCCC00;
result2.textColor = 0x666600;
result2.type = "input";
result2.text = "テキストフィールド2";

テキストフィールドを同じタイムライン上にしてするときは、深度の設定に気をつけよう。