Flash AS = Flash ActionScript
学习Flash AS快捷简单的方法:
1)查看Flash AS帮助
2)google
Flash AS的语法和javascript非常相似,javascript中的函数基本上在Flash AS中都有对应。在写第一个Flash AS时,用到了setInterval, clearInterval等方法,但是没有setTimeout方法,郁闷~
Flash中有一个场景概念,基本上相当于主Form,Form中的控件就相当于Flash中的元件,元件分为三个:影片剪辑,按钮和图片。影片剪辑就是一个动画,按钮分为四个状态(弹起,按下,移动,点击),可以在这四种状态中画不同状态时的按钮效果。按钮事件:on(press),on(release)等等。
Flash中的动作,就是写AS。有动作(有脚本)的帧会有一个a,每一帧可以写AS。写AS的过程,点击一帧,然后点击下方面板的动作或者点鼠标右键选择动作,在弹出的动作输入框中编写脚本;同理,在元件中也可以。也可以分图层,然后在不同的图层写AS。
代码片断:
var
intervalId:Number;
var
curYear:Number
=
0
;
var
curMonth:Number
=
0
;
var
curDay:Number
=
0
;
var
maxYear:Number
=
100
;
var
duration:Number
=
5000
;
//
时间间隔5秒
var
birthDate:Date
=
new
Date(
2008
,
1
,
4
,
21
,
0
,
0
);
//
应该是2月4日,这里的月份要-1
var
curDate:Date;
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
function
howOldAmI():Void
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
//trace("executeCallback intervalPicId: " + intervalId + " count: " + count);
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
/**//*if (curYear >= maxYear)
{
clearInterval(intervalPicId);
}
else*/
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
curDate = new Date();
var seconds = (curDate - birthDate) / 1000;
//curYear = ;
//curMonth =
curDay = Math.floor(seconds / (60 * 60 * 24));
timeText = "秦浩轩:我有" + curDay + "天了!";
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
function
beginInterval():Void
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
if(intervalId != null)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
...{
trace("clearInterval");
clearInterval(intervalId);
}
intervalId = setInterval(this, "howOldAmI", duration);
}
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
timeText
=
"
秦浩轩:我是一个小男子汉!
"
;
beginInterval();
trace是调试语句,在Flash的输出窗口中显示。上面的timeText是动态文本的变量名。插入动态文本就是在左边的面板中选择“A”;
在影片剪辑中随机显示某一帧,可以在场景中,选择从库中拖入的影片剪辑,选择动作,插入代码:
onClipEvent(load)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
stop();
var i = new Date().getTime() % 4 + 1;
gotoAndStop(i);
trace("load frame....."+i);
}
onClipEvent(load)表示当此影片剪辑加载时触发的事件,还有一个onEnterFrame表示播放某一帧时触发。由于这里只需要在加载时触发一次,所以用onClipEvent(load);gotoAndStop(i)表示播放到某帧并停止;i表示帧的索引号,索引号从1开始,如果传0,则也是1;
导入本地图片的方法,菜单[文件]->[导入]->[导入到库];
查看库的快捷键:CTRL+L
显示输出窗口:F2
运行FLASH:CTRL+ENTER