flashのHPを作っております。
(mc)ボタンを配置しクリックすると画面の背景が変わる操作をしたいと思っており(top、new、main・・・など)
下記のHPのような
http://www.mediacreator.jp/tutorials/show_tutori …
操作ボタンを作っております。
上記HPは2.0で製作されているため、3.0に改変し、
アクションを下のようにしました。
var buttonNames= new Array("button1", "button2", "button3", "button4");
button1.buttonMode = true;
button2.buttonMode = true;
button3.buttonMode = true;
button4.buttonMode = true;
button1.addEventListener(MouseEvent.CLICK, button1click);
button2.addEventListener(MouseEvent.CLICK, button2click);
button3.addEventListener(MouseEvent.CLICK, button3click);
button4.addEventListener(MouseEvent.CLICK, button4click);
function resetButton(buttonName){
for(var i = 0; i < buttonNames.length; i++){
if(buttonNames[i] != buttonName){
this[buttonNames[i]].gotoAndStop(1);
this[buttonNames[i]].enabled = true;
}
}
}
function button1click(event:MouseEvent):void {
resetButton(button1);
this.gotoAndStop(2);
this.enabled = false;
}
function button2click(event:MouseEvent):void {
resetButton(button2);
this.gotoAndStop(2);
this.enabled = false;
}
function button3click(event:MouseEvent):void {
resetButton(button3);
this.gotoAndStop(2);
this.enabled = false;
}
function button4click(event:MouseEvent):void {
resetButton(button4);
this.gotoAndStop(2);
this.enabled = false;
}
コンパイルエラーは無くなったのですが、ボタン自体が動いてくれません。
どこが間違っているか分かる方、お教え下さい!
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
最小の変更で
こんな感じ↓にすれば良いのではないでしょうか?
===========================================
var buttonNames=new Array("button1","button2","button3","button4");
button1.buttonMode=true;
button2.buttonMode=true;
button3.buttonMode=true;
button4.buttonMode=true;
button1.addEventListener(MouseEvent.CLICK, buttonClick);
button2.addEventListener(MouseEvent.CLICK, buttonClick);
button3.addEventListener(MouseEvent.CLICK, buttonClick);
button4.addEventListener(MouseEvent.CLICK, buttonClick);
function resetButton() {
for (var i = 0; i < buttonNames.length; i++) {
this[buttonNames[i]].gotoAndStop(1);
this[buttonNames[i]].enabled=true;
}
}
function buttonClick(event:MouseEvent):void {
resetButton();
event.currentTarget.gotoAndStop(2);
event.currentTarget.enabled=false;
}
==================================================
でもこれだと配列を用意した意味がほとんどなくなります。
次のようにすれば,
ある程度は配列の意味が出てくるかもしれません(どっちにしてもあまり出ませんけど...)。
==================================================
var buttonNames=new Array("button1","button2","button3","button4");
for (var i:int = 0; i < buttonNames.length; i++) {
this[buttonNames[i]].buttonMode=true;
this[buttonNames[i]].addEventListener(MouseEvent.CLICK, buttonClick);
}
function resetButton() {
for (var i:int = 0; i < buttonNames.length; i++) {
this[buttonNames[i]].gotoAndStop(1);
this[buttonNames[i]].enabled=true;
}
}
function buttonClick(event:MouseEvent):void {
resetButton();
event.currentTarget.gotoAndStop(2);
event.currentTarget.enabled=false;
}
==================================================
お返事遅くなって申し訳ありません!
配列を使ってボタンにアクションを付けていきたかったのですが、
教えて下さった内容がとてもヒントになりました!
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
potplayerについて質問です
-
アメブロで音声ファイルを貼る方法
-
フラッシュゲームアーカイブ2
-
スマホでサイトの画像を長押し→...
-
Python でシャットダウンのコマ...
-
FLASHでゲームを作っていた人は...
-
この曲はなんでしょう?
-
laptop go2からの買い替え、lap...
-
スクリップト
-
私のコンピューター上のファイ...
-
arduino プログラムについて
-
chrome flash
-
FLASHの再生はできないのでしょ...
-
ウェブサイトで Flash が事実上...
-
Flashコンテンツを使ったWebサイト
-
Flash Playerのサポートが終了
-
Form内のselectを連動させるに...
-
Flashをブロックしないで
-
ダウンロードしたデジブックはa...
-
ad or script について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
for文で配置した物の個別取得【...
-
Flash 外部から読み込んだ画像...
-
繰り返し
-
Flash as3.0版ソース ボタン...
-
AS2.0からAS3.0にうまく変換で...
-
エラー(型が一致しません。)...
-
VB6でユーザー定義型がNothing...
-
TextChangeイベントが発生しない
-
LRESULTとHRESULT
-
c++ cmathとmath.h
-
配列の要素番号を取得するには?
-
変な質問ですみません、n番目の...
-
VB.NET の配列の要素数
-
DataGridでCTRLキーを押さずに...
-
IDの自動採番について
-
ifdefとenum
-
プログラム開始から 2秒毎に ...
-
#define 文
-
エラー438でオブジェクトの...
-
VB6 複数行のテキストをリスト...
おすすめ情報