继续《指法练习》的AS2向AS3的迁移,记录一下过程:
1、直接另存为Flash CS6文档,并不能改变脚本的版本,需要在发布设置里,将Flashplay设置成11.2,选择AS3.0
2、测试影片,可以在编译器错误里,查看错误的代码行
3、屏蔽右键菜单: stage.showDefaultContextMenu =false;
4、可以直接在脚本工具栏里,把一行或选中一块,设置为注释,右键取消注释
5、脚本工具栏,可以显示左边的代码工具箱
6、代码只能写在帧上,不能写在元件里,也可以写在新建的as3类里,在右边的属性面板里,引入类文件名,在这个属性面板里,也能够修改as的版本
7、import 这些语句,是在类文件中使用,时间轴上,直接写代码也可以
8、函数无返回值,小写的void,不再是第一个大写字母
9、按键事件,用侦听器,定义一个类,代码片段插入的代码会自动增加一个图层,自己写的在默认的图层1的帧里
10、侦听的时候,需要一个处理函数(如keyUPFun),单独制作这个函数,处理事件时调用
代码: 全选
in_txt.addEventListener(KeyboardEvent.KEY_UP,keyUpFun);
function keyUpFun(e:KeyboardEvent):void
{
out_txt.text = in_txt.text;
}
11、库里的音乐,需要右键,属性,AS,打勾,设置类名(比如 errSound),然后在代码里定义
代码: 全选
var mySound:Sound = new errSound() as Sound;
errSound.play();
12、定时器也是侦听器类,一个处理函数
代码: 全选
var fl_SecondsToCountDown:Number = 5;//一个数值变量,存放次数初始值5
var fl_CountDownTimerInstance:Timer = new Timer(1000,10);
//时间间隔第一个参数,就执行,第二个参数是执行次数,省略永远循环
fl_CountDownTimerInstance.addEventListener(TimerEvent.TIMER, fl_CountDownTimerHandler);
fl_CountDownTimerInstance.start();//启动定时器
function fl_CountDownTimerHandler(event:TimerEvent):void
{
trace(fl_SecondsToCountDown + " 秒");
fl_SecondsToCountDown--;
if (fl_SecondsToCountDown <2)
{
fl_CountDownTimerInstance.stop();//停止定时器
trace("停止定时器");
fl_CountDownTimerInstance.start();//启动定时器
}
}
13、焦点换stage,key不能用了
14、文本框在输入文字后,属性里点嵌入,可以在下边包含文本框里,把用到的汉字输入进去,而比较小的英文字体可以全部包含
15、substr可以截取字符串,可以用负数,可以省略第二个参数,比如要测试最后四位是否是扩展名.txt
代码: 全选
if (instrAll_txt.text.substr(-4) == ".txt")
{...}
16、关键字的后面不能跟注释,比如 if、else、function 这些行,而是要在大括号里,或者句子的后面跟注释