FLASH LITE1.1で、テキスト入力フィールドからユーザに数字を入力してもらい、その数字をもとにタイムライン上の適切なラベルに跳びたいのですがうまくいきません。
具体的には、フレームに次のASを書き、
fscommand2("SetInputTextType","nb","Numeric");
stop();
ボタンに、次のASを書いたのですが、
on(keyPress"*"){gotoAndPlay("eval("nb")");}
うまくいきません。
クイズがタイムライン上に順に20問用意されており、それぞれのクイズの最初のフレームに、順に1~20とラベルされており、ユーザーが1~20のどれかを入力すれば、そのラベルに跳ぶようなイメージです。
ご教授いただければと思います。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
> 順に1~20とラベルされており
ラベルとは...???
フレームに1~20というラベル名を付けたのですか?
まずそれがダメでしょう。
"ラベル名" なら "ラベル名" らしく,ちゃんと文字列にしないと。
例えば
フレームに「label1」~「label20」というラベル名を付けたとします。
その場合,
ボタンに書くスクリプトは次のようになります。
----------------------------
on (keyPress "*") {
gotoAndPlay("label" add nb);
}
----------------------------
gotoAndPlay() または gotoAndStop() の引数が1つの場合
その引数は 「フレームラベル名」 または 「フレーム番号」 として Flash Player に受けとられます。
gotoAndPlay("文字列") の場合「フレームラベル名」として受けとられ
gotoAndPlay(整数値) の場合「フレーム番号」として受けとられます。
また,
Flash Lite 1.x では 数値加算演算子 と 文字列加算演算子 が区別されています。
「+」が数値加算演算子で,「add」が文字列加算演算子です。
(例: 1+1→2 , 1 add 1→11)
なお Flash Player 5 以降は
数値加算演算子 と 文字列加算演算子 の区別はなくなり,
どちらであっても 「+」 を使います。
(例: 1+1→2 ,Number(String(1)+String(1))→11)
あと,
eval は インスタンス や 変数 を文字列で呼ぶときに使うものです。
今回の場合は全く関係しないでしょう。
---一般的なevalの使用例------------
for (i=1; i<=10; i++) {
eval("Hensuu" add i) = i;
}
trace(Hensuu5);
--------------------------------
---あえて今回のものに使用すると-------
on (keyPress "*") {
gotoAndPlay("label" add eval("nb"));
}
--------------------------------
↑回りくどくてややこしくなっただけです。
evalを使う必要は全くありません。
なお Flash Player 5 以降,
eval の使用は非推奨(半使用禁止)になりました。
代わりに 「配列アクセス演算子」 を使います。
動作検証時の作成物画面例↓
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- Visual Basic(VBA) VBAのトグルボタンでのマクロについて質問です 3 2022/10/10 17:23
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- その他(買い物・ショッピング) 商品にラベルを貼って出荷するまでのの手順にについて 2 2022/09/29 15:26
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- 画像編集・動画編集・音楽編集 Adobeのプレミアプロ(premiere pro)を使って動画編集をしている者です。 先日最新版の 1 2023/03/13 21:08
- Excel(エクセル) EXCEL関数(数式)を教えてください 2 2022/06/08 18:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
suzuka rollOverで画像が徐々...
-
WEBブラウザの重複起動の禁止
-
Excel VBA SetFocus
-
エクセルVBA読み込みアドレスの...
-
cookieの保存について
-
スライドプレゼンテーション機...
-
巻き戻しボタンを作りたいので...
-
Flashゲームのセーブ機能の作り方
-
5フレーム目で3秒止めて7フレー...
-
シーケンス番号の初期値
-
プリローダーで、画像を下から...
-
Kiss DN AFフレームを非表示に...
-
iframeはSEO的に不利になる?
-
VB6のスクロールバー付きフレー...
-
メディアプレーヤーで再生する...
-
グリーティングカード
-
処理の速い当たり判定について[...
-
VBSでHTMLソースの取得方法で
-
2倍速を等速動画に(車載動画)
-
ドロップフレームの計算をエク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WEBブラウザの重複起動の禁止
-
JavaScriptからsetVariable()で...
-
時刻の設定と取得について
-
FLASH LITE1.1のテキスト入力に...
-
FlashLite1.1でのランダム表示...
-
Excel VBA SetFocus
-
Flash lite1.0で カウントダウン
-
Flash lite1.0の計算クイズ
-
Suzukaで時計のflashを作成し、...
-
_parent.gotoAndStopコマンドに...
-
二択のフレーム移動
-
FLASH上でインラインフレームみ...
-
フレーム内に移動したい
-
ドロップフレームの計算をエク...
-
Access2010でサブフォームのフ...
-
phpで音を鳴らす
-
フレーム内のオプションボタン...
-
【C#】wavファイルの複数同時再生
-
VB6のスクロールバー付きフレー...
-
C#でDLLファイル読み込みを行う...
おすすめ情報