一、主时间线上的代码:
import fl.controls.Button;
import flash.display.MovieClip;
//run_btn是事件按钮,在主时间轴上
//mc是要控制的剪辑,在主时间轴上
//frame1\frame2\frame3是mc内部的帧标签
//在上述两个元件同时出现的帧上写代码(本例尽在第1帧里):
stop();
ctrl(run_btn,mc,"frame1","frame2","frame3");
//通用函数:
function ctrl(btn:Button=null ,target:MovieClip=null,f1:String ="",f2:String ="",f3:String ="") {
if (!(target ||target||f1||f2||f3)) {
//只要有一处未设置就报错
trace("错误:变量未设置")
return;
}
btn.addEventListener(MouseEvent.MOUSE_OVER,goto);
btn.addEventListener(MouseEvent.MOUSE_DOWN,goto);
btn.addEventListener(MouseEvent.MOUSE_OUT,goto);
function goto(e:MouseEvent) {
if (e.type==MouseEvent.MOUSE_OVER) {
mc.gotoAndPlay(f1);
}
if (e.type==MouseEvent.MOUSE_DOWN) {
mc.gotoAndPlay(f2);
}mc
if (e.type==MouseEvent.MOUSE_OUT) {
mc.gotoAndPlay(f3);
}
}
}
二、mc的内部结构:代码均为 stop()
三、主时间线上的情况:
四、效果:
见附件。
Flash 爱好者:张志晨