[問題] 如何在主時間軸定義MC裡的按鈕
使用as3,目標是製作一個可換頁的動畫,
擁有一個首頁(home)和三個頁面(a,b,c),會顯示在同一區塊
動畫開始時,先載入home,
然後出現三個點入其餘頁面的按鈕元件btn1,btn2.btn3(都在該區塊內)
(按鈕是最後出現,疊在頁面之上)
點選任一按鈕元件後,如同首頁一樣在該區塊播放出頁面及三個其餘頁面的按鈕
即為點選btn1,會載入a頁,然後出現btnhome,btn2,btn3的按鈕。
目前我的做法是分別將首頁及三個頁面的出現各做成MChome,MC1.MC2,MC3四個MC
分別放在四個圖層的"影格1"
但是由於讓影格播放的按鈕都在mc裡,請問該如何定義?
我寫在主時間軸上的好像都變成是重新定義,而不是真的抓到MC裡面的按鈕..
另外請問使用SimpleButton對不對? 因為若改成Button都會出現錯誤...
-------------------------------------
下面是我寫在主時間軸actions圖層影格1內的程式碼:
import flash.display.MovieClip;
import flash.display.DisplayObject;
import flash.display.SimpleButton;
var MChome:MovieClip = home;
var MC1:MovieClip = a;
var MC2:MovieClip = b;
var MC3:MovieClip = c;
var btn1:SimpleButton = new SimpleButton();
addChild(btn1);
var btn2:SimpleButton = new SimpleButton();
addChild(btn2);
var btn3:SimpleButton = new SimpleButton();
addChild(btn3);
var btnhome:SimpleButton = new SimpleButton();
addChild(btnhome);
btn1.addEventListener(MouseEvent.CLICK, one);
btn2.addEventListener(MouseEvent.CLICK, two);
btn3.addEventListener(MouseEvent.CLICK, three);
btnhome.addEventListener(MouseEvent.CLICK, h);
function h(e:MouseEvent):void {
MChome.visible = true;
MC1.visible = false;
MC2.visible = false;
MC3.visible = false;
MChome.gotoAndPlay(1);
}
function one(e:MouseEvent):void {
MChome.visible = false;
MC1.visible = true;
MC2.visible = false;
MC3.visible = false;
MC1.gotoAndPlay(1);
}
function two(e:MouseEvent):void {
MChome.visible = false;
MC1.visible = false;
MC2.visible = true;
MC3.visible = false;
MC2.gotoAndPlay(1);
}
function three(e:MouseEvent):void {
MChome.visible = false;
MC1.visible = false;
MC2.visible = false;
MC3.visible = true;
MC3.gotoAndPlay(1);
}
stop();
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.121.157.63
→
08/18 08:45, , 1F
08/18 08:45, 1F
→
08/18 09:06, , 2F
08/18 09:06, 2F
→
08/18 09:07, , 3F
08/18 09:07, 3F
→
08/18 09:10, , 4F
08/18 09:10, 4F
→
08/18 09:10, , 5F
08/18 09:10, 5F
→
08/18 09:33, , 6F
08/18 09:33, 6F
→
08/18 12:23, , 7F
08/18 12:23, 7F