|
box_btn.onPress=function(){
trace("ok");
};
按钮实例名称.事件处理方法=function(){
//处理程序
};
例如:
n=1
box_btn.onRelease=function(){
n=n+1
trace("n="+n);
}
当按钮被点一下的时候,Output窗口会输出:"n=2"
onClipEvent(load){
stop();
}
以上是影片剪辑的事件处理函数。"()"的内部是事件。
在一个FLASH里在第一个场景里调用第二个场景,
要在第一个场景里需要调用的地方加个按钮,然后在按钮上写下如下代码:
on (release) {
tellTarget ("_root") {
gotoAndPlay ("mm2", 1);
}
}
其中,"mm2"是第二个场景的MC的名称。
on (release) {
loadmovie("fz3.swf",1);
setProperty("fz3.swf",_x,100);
setProperty("fz3.swf",_y,100);
_root.createEmptyMovieClip("Card Game");
mc.loadMovie("fz3.swf");
mc._x=0;
mc._y=0;
}
fz3.swf是需要调入的SWF文件,_x,_y是坐标轴
Card Game是SWF中MC的名字
on(release)结构只能用于按钮,
其他相关的几种用法如on(press)、on(rollOver)、on(rollout)、on(dragOver)、on(dragOut)等。
2.else
对if语句可以进行扩展,使用else执行条件不成立(比较表达式为false)时的代码,如下所示:
if (x == 9) {
gotoAndPlay(15);
} else {
gotoAndPlay(16);
}
你也可以使用else if语句将if语句更推进一步,如下所示:
if (x == 9) {
gotoAndPlay(15);
} else if (x == 10) {
gotoAndPlay(16);
} else if (x == 11) {
gotoAndPlay(20);
} else {
gotoAndPlay(25);
}
你可以让if语句想要多长就有多长,你也可以使用else if语句对别的变量进行比较,如下所示:
if (x == 9) {
gotoAndPlay(15);
} else if (y<20) {
gotoAndPlay(16);
} else {
gotoAndPlay(25);
}
3.复合比较
你可以在一个if语句中对几个比较表达式的值进行判断,
比如说你希望在x为9并且y为20时跳转到第10帧,可以使用如下所示的脚本:
if ((x == 9) && (y == 20)) {
gotoAndPlay(10);
}
逻辑与运算符&&将两个比较表达式联接在一起成为一个复合表达式,
当两个表达式的值都为true时复合表达式的值才为true。
每个比较表达式都需要添加独立的括号以便Flash能正确识别。
在Flash的早期版本中使用and执行逻辑与运算,现在已推荐不使用。
你也可以使用逻辑或运算符||将两个比较表达式联接在一起成为一个复合表达式,
只要有一个表达式的值为true,复合表达式的值就为true。如下所示:
if ((x == 7) || (y == 15)) {
gotoAndPlay(20);
}
在该脚本中,只要x为7或者y为15,或者两者都成立,结果都是跳转到第20帧。
只有当两者都不成立时,才不会执行gotoAndPlay命令。
3.4.6 函数
到现在为止,我们都是将脚本放在影片的第1帧中。
如果程序相当复杂,再放在同一帧中就使脚本显得太庞大了。
函数使你可以组织需重用的代码,并放在时间轴中,例如:
function myFunction(myNum) {
var newNum = myNum+5;
return newNum;
}
函数以关键字function开头,function后面是函数名。
与变量名相似,你可以指定自己的函数名,最好将函数名取得有意义一些。
函数名后面的括号容纳该函数的参数,所谓参数也是一个变量,它的值在调用该函数时予以指定。
一个函数可以有若干参数,也可以没有参数。无论有没有参数,函数名后都应紧跟一对括号。
大括号中的部分是函数体,在函数体中创建了一个局部变量newNum,
[1] [2] [3] 下一页
|