Action Script基础知识学习flash动画必备.docx
《Action Script基础知识学习flash动画必备.docx》由会员分享,可在线阅读,更多相关《Action Script基础知识学习flash动画必备.docx(9页珍藏版)》请在冰豆网上搜索。
ActionScript基础知识学习flash动画必备
ActionScript
ActionScript
基础知识
1. 所谓ActionScript,2. 就是Flash中所使用的程序语法ScriptLanguage,3. 借着ActionScript,4. 我们可以控制电影的播放、制作按钮、制作互动游戏以及其他特效。
5. ActionScript可完成的电影互动:
A. 播放及停止电影
B. 设置电影的播放品质
C. 停止播放任何声音文件
D. 跳转到不同E. 的URL
F. 跳转到特定的Frmae或Screen
G. 检查某个特定的Frame是否被载入
H. 载入或取消载入额外的电影
I. 自定义鼠标J. 的指K. 针
L. 取得鼠标M. 的指N. 针位置
O. 取得键盘的按键值
P. 建立一块可卷动的文字块
Q. 设置颜色数值
R. 控制声音
S. 。
。
。
。
。
。
6. 指7. 令编写环境(指8. 令面板——ActionPanel)
A. 是我们撰写指B. 令的主要窗口
C. 打开
l F9
l 窗口>>动作
D. 标E. 题栏:
根据动作对象的不同F. 性质而G. 随时发生改变
脚本定位栏:
固定当前脚本对象;
命令提示/注释栏(可展开或折叠):
对当前脚本加以简单说明;
命令参数设置区:
对当前函数命令进行具体的参数设置
代码区:
编辑或显示已编辑的脚本命令
工具箱清单:
(九大项目)动作、运算符、函数、常量、属性、对象、否决的、FlashUI组件、索引
H. 工作模式
l 专家模式
l 一般模式
I. 视图选项按钮
J. 状态栏
9. 编辑指10. 令
A. 一般说来,B. 指C. 令通常设置在按钮、关键帧或是电影剪辑之中。
指D. 令设置位置的不同E. 将会影响到电影效果的产生。
F. 添加:
l 双击工具箱清单
l 视图选项按钮中的添加命令按钮
l 手动添加
11. 规划脚本,12. 应考虑:
A. 使用哪些动作
B. 如何建立脚本结构
C. 哪些地方使用脚本
13. ActionScript运行控制(行为)
A. 事件:
用户使用鼠标B. 或键盘所进行的操作。
On、OnClipEvent
C. 方法:
用户在进行某个事件后机器作出的反应的整个过程。
14. 一段完整的指15. 令是由多个函数组成的。
嵌套关系依次是:
表达式、数据和运算符
★“一段”是指一个完整的指令片段,即一段完整的指令,或一段函数。
一般情况下用大括号“{}”表示。
另外,需要说明的是,指令中所以标点符号都必须是英文符号,且必须成对出现。
<详见语法部分>
A. 指B. 令(程序Actions):
是一段用来表示电影在播放时要执行的某指C. 令的一段陈述式;
D. 表达式(Expressions):
陈述式中任何一段会产生一个”值”的部分.由数据和运算符组成;可以是变量、文字、数值、运算符或是以上任何一种排列组合。
例:
10+5 count+3 x+y ……
E. 数据(Data):
任何在电影中能够表达某中信息的量;
例:
10 count 假 “我们都是中国人” ……
F. 运算符(Operators):
将数据进行运算以取得新的值的方法.
例:
count=5 z=x*Y
16. 其他相关名17. 词术语
A. 电影剪辑(MovieClip):
在舞台上复B. 制的某个MC,它具有自身的相对独立的属性;
C. 关键字(Keywords)
l 关键字就是ActionScript在程序语言部分保留几个特效的字,l 这些字不l 能拿来当做变量、函数、帧等名l 称。
l 常见关键字:
Break/continue/delete/else/for/function/if/in/new/return/this/typeof/ var/void/while /with……
D. 对象(Objects):
是一群含有特殊属性的项目\集合,E. 每个对象都有其独特的名F. 称和值。
例:
Date Mouse Sound MC Frame
G. 参数(Arguments):
程序运行过程中,H. 在程序和函数之间进行数据传递的。
例:
Functioncreatemosquitos(count){
VarI;
For(I=1;I<=count;I++){
_root.attachmovie(“mosquito”,“mosquito“+I,I);
}
}
这其中, count就是起传递作用的参数值。
I. 属性(Properties):
定义对象的属性
例:
_Visible _rotation _x MC1._y
J. 目标K. 路径(TargetPaths):
是指L. 电影中电影剪辑实例的名M. 称、变量以及对象的分层结构地址。
要控制某一个对象时,N. 必须要告诉主程序该对象所处的位置。
主时间轴的地址名O. 称为”_root”。
目标P. 地址分为相对路径和绝对路径。
l 相对路径:
指l 从当前位置开始引用对象
例:
MC1.count=5;
l 绝对路径:
指l 从主时间轴开始引用对象
例:
_root.MC1.count=5;
有些指令必须要指定出目标路径后才能彻底执行。
如:
duplicateMovieClip loadMovie loadVariables print printAsBitmap
removeMovieClip setProperty startDrag tellTarget unloadMovie
变量及数据类型
18. 不19. 管是哪种程序语言,20. 就学习程序这个过程而21. 言,22. 我们一般要了解的几个事项有以下三种:
A. 保存数据的方法
B. 评估数据的方法
C. 操作数据的方法
23. 就以上三个事项而24. 言,25. 程序给我们的解答是:
A. 变量(Variables)
B. 运算符(Operator)
C. 函数(Function)、表达式(Expression)、对象(Object)
26. 变量是什么
变量是用来暂存数据的,若将数值数据指定给变量,则该变量即为数值变量。
变量的实体是主存储器,将数据指定给变量,也就是将数据存入主存储器中。
变量是会变更的内容。
简单的说,变量就象个容器,主要是用来暂时存储任何数据类型的值。
可以利用指令来自定义、取得或修正变量。
变量不但可以暂存各种不同的数据类型,更可以包含各种不同类型的值。
举例:
服装店中的衣服,可以根据时令的改变而改变衣服的种类,也可根据店主资本的大小而改变其中衣服的种类、数量、档次等。
这其中,服装店的名称没有发生变化,但是其中的衣服却一直根据店主的意愿而不断的改变内容及类型。
27. 变量的命名28. 规则与习惯
A. 变量名B. 称必须以英文字母开头
C. 变量名D. 称没有大小写的区分
E. 变量名F. 称中间不G. 能有空格
H. 除了底线”_“符号外,变量名I. 称中不J. 能使用其他任何符号
K. 变量名L. 称不M. 能使用程序指N. 令中的关键字.
O. 变量名P. 称必须要具有一定的实在意义
29. 变量的范畴
变量的范畴指的是变量所能影响的范围.
A. 总体变量/全局变量(GlobalVariable)
l 总体变量是从电影开始到结束都被保留并可在不同l 时间轴上共同l 分享的,l 是属于保存较久的变量
l 声明总体变量:
Action>>setVariables
B. 区域变量/局部变量(LocalVariable)
l 区域变量指l 在指l 令被调用时才生效且一般常用于循环中的计数器。
也就是说,l 区域变量不l 是在程序主体中使用,l 只是在某一个函数段中使用,l 当函数执行完后便失效。
也不l 能在所声明的函数外使用。
l 声明区域变量:
Action>>Var
30. 变量的内容值
内容值就是一个(组)数据或另一个变量。
数据可以是几种不同的数据类型。
常数(Constants)、数值(Number)、布尔值(Boolean)、字符串(String)、对象(Object)、电影剪辑(MovieClip)或是空白(Null)。
31. 数据类型
ActionScript数据类型基本上可以分为原始型数据和参考型数据良种类型。
原始型数据指的是数值、布尔值、字符串等类型。
A. 常数或常量:
指B. 的是绝对不C. 变的属性元素。
通常在比较值(if)的时候非常有用的。
如Backspace,Enter,Return,Space这些是键盘对象Key的专用属性,D. 是用来代表键盘上的特殊键。
他们的值永远不E. 变!
例:
if(keycode()==Key.Enter){
Alert=“准备开始计时了吗?
”
readytogoMC.gotoAndStop(5);
}
F. 数值:
任何一个数值,G. 没有字母也没有其他的符号。
由0~9十个阿拉伯数字组成。
l 正数 例:
age=12;
l 负数 x=-32+15;
l 整数 whole=Int(47/3); whole=15
l 浮点数 whole=47/3 whole=15.6666
H. 布尔值:
布尔值只有两个结果,I. 真(True)、假(False)
例:
bigger=9<10; bigger=True
如果给这段指令加上新的指令 total=bigger+3;
那么此时变量total的结果则应该为4,因为bigger=1
在程序语言设计中,规定:
True=1 False=0
J. 字符串:
在程序中,K. 字符串最常被用来显示信息,L. 它可以是任何数字或字符或两者的组合,而M. 且一定要用双引号将内容包起来。
例:
address=“36011stStreet”
在这个例子中,变量address只有一个值。
N. 空白:
所谓空白指O. 的是变量中没有设置任何值,P. 也就是内容值为空。
通常用来判断循环中的变量是否已经执行。
例:
do{
If(“button”+t==“”){
Eof=1
}
}while(eof<1);
Q. 电影剪辑:
在ActionScript中,R. 电影剪辑也是数据类型的一种。
与其他类型的数据类型不同S. 的是,T. 电影剪辑角色的数据可以是一串指U. 令,V. 也可以是图形。
如同W. 一个数组一般。
电影剪辑一般用来当目标X. 路径,Y. 以方便执行某种指Z. 令。
例:
_root.plane.stop()
运算符号
所谓的运算符号,主要是用来决定变量中的内容在表达式中,应该如何被评估。
运算符号的选用与参加运算的数据的类型相关。
由此我们可以把运算符号分为如下几种类型。
但是值得注意的是,运算符号的分类不是绝对的。
32. 数值运算符号:
进行数值的运算。
列举:
符号 说明 举例
+ 相加 Scroe=90+86
— 相减 Scroe=100–16
* 相乘。
如果两个数值都是整数,其积就是整数。
但如果其中之一或两个数值都是非整数,其运算结果便是浮点数。
X=10*2 x==20
Y=1.0*2 y==2.0
/ 相除 Pj=488/5 pj==97.6
% 余数(取余) Pj=488%5 pj==3
++ 向前或向后递增 X++ x=x=1
—— 向前或向后递减
== 相等。
是!
=运算符号的反运算符号
!
= 不相等.
= 赋值
33. 比较运算符号:
主要在对比表达式的值后,34. 返回布尔值。
这些运算符号大多用在循环及条件陈述式中。
列举:
符号 说明 举例
> 大于。
如果是比较字符串则是依据字符串中字母的值来取得比较结果。
X=9>10;
< 小于。
Y=9<10;
>= 大于等于。
不小于
<= 小于等于。
不大于
例:
假设a是John的年龄,而b是Mike的年龄。
如果a 等于b,则ab是双胞胎兄弟;如果a>b,则a是哥哥;但如果a
if(a==b){
trace(“ab是双胞胎兄弟”);
}elseif(a>b){
Trace(“a是哥哥“);
}elseif(a
Trace(“b是哥哥”);
}
35. 逻辑运算符号
逻辑运算符号是用来比较布尔值(TrueorFalse)后,并返回第三个布尔值。
基本说来逻辑运算符号有三个:
and(&&)or(||)not(!
)
符号 说明
&& 逻辑与(And)。
必须两者都为真才成立。
|| 逻辑或(Or)。
只要两者中某一者或两者皆为真就成立。
!
逻辑非(Not)。
如果test是绝对为真,那么,test的值则会变成假。
&&逻辑与(And)
例:
如果今天是周六,同时也是本月的第一个礼拜,那么John就会举行一次Party。
Today=“Saturday”;
Week=“Firstweek”;
If((today==“Saturday”)&&(week==“firstweek”)){
Message=“今天John举行Party。
”;
}
逻辑与的几种可能性:
条件1 && 条件2 =结果
F F F
F T F
T F F
T T T
||逻辑或(Or)
例:
如果今天下雨,或者今天工作太累,那么今天就不打网球了!
Weather=“sunny”;
Work=“exhausting”;
If((weather==“raining”)||(work==“exhausting”)){
Message=“今天不打网球了”;
}
逻辑或的几种可能性:
(略)
!
逻辑非(Not)
例:
如果你的高考成绩不能上线,那你肯定不能被录取。
Scroe=“上线“;
If(!
scroe){
Trace(“很抱歉,你没有被录取!
”);
}
逻辑非的几种可能性:
(略)
36. 字符串运算符号
符号 说明
“” 所有的字符串都必须包含在两个引号中
Add 字符串相加
Eq 字符串相等
Ne 字符串不等
It 字符串小于
Gt 字符串大于
Le 字符串小于等于
ge 字符串大于等于
例:
input=“John”;
usename=“Joey”;
if(inputequsename){
output=“welcomeback“;
}else{
output=“Accessdenied”;
}
在这个例子中,判断了两个字符串是否相等.我们还可以利用这些字符串进行运算。
字符串的运算,先取得字符串中每一项的第一个字符,再按照每一个字符在ASCII码表中的数值来决定的。
在比较的过程中,字符的大小写与其ASCII值是有关的。
也就是说,大写的”A”与小写的”a”的值是不一样的,前者为65,后者等于97。
另外,字符串的相连可以用运算符号add也可以用符号”+“,而且也可以与其他数据类型混合运算。
例:
str1=“Number”;
Str2=“isastringnow“;
Str3=str1+22+str2;
那么:
str3=“Number22isastringnow”
例:
high=“orange”;
Low=“Grapefruit”;
If(high>low){
Output=”that’scorrect”;
}
37. 位运算符号:
所谓的位运算,38. 是用来处理浮点数的。
基本上,39. 所有的浮点数都会被转换为32位的整数。
比较适合在Flash4中撰写指40. 令。
具体符号略
41. 混合指42. 定运算符号:
混合运算是将几个运算组合起来的一种运算方法。
符号 说明
|=
&=
+=
-=
%=
/=
43. 运算符号的优先顺序
在一个陈述式中,使用两个或两个以上的运算符号的时候,某些运算符号会比其他的运算符号要有更高的优先权。
在有括号的时候,括号会改变运算符号的优先级别。
一般情况下,ActionScript的运算符号的优先级别和正常的数学运算符号级别一样。
只有少数符号需要特别注意。
赋值运算符号级别最低。
另:
注意各运算符号的组合顺序。
符号 最高优先权 符号 最高优先权
It 左到右 !
= 左到右
Le 左到右 == 左到右
Gt 左到右 () 左到右
Ge 左到右 [] 左到右
Eq 左到右 * 左到右
Ne 左到右 / 左到右
And 左到右 < 左到右
&& 左到右 <= 左到右
|| 左到右 > 左到右
Or 左到右 >= 左到右
+ 右到左 ++ 右到左/左到右
- 右到左 -- 右到左/左到右
= 右到左
函数(function)
44. 所谓的函数,45. 一般都是用来定义一组可以被重复46. 使用的程序代码段。
可以是软件内置函数,47. 也可以是用户自定义的复48. 杂程序代码以执行某个特殊任务。
在主程序中,49. 通过函数名50. 称来调用某个函数,51. 将主程序中的数据传递给函数,52. 在运行完成之后返回函数运算结果给主程序。
53. 函数的语法:
函数名(参数值)
对象
54. 只要是一组含有属性的项目就可以作为一个对象。
55. 常见的内置对象有:
array数组对象
color颜色对象
Date日期对象
Math数学对象
使用ActionScript语法
任何一种语言都有自己的语法规则,也就是表述某种意思的表达方法,以确定使用哪些字符和单词来创建脚本以及按什么顺序来编写。
56. 点语法
A. 点被用来指B. 示和对象或电影剪辑相关连的属性或方法。
也可以用来识别电影剪辑、变量、函数或对象的目标C. 路径。
同D. 时点又是运算符,E. 在左边使用对象的名F. 称,G. 在右面使用属性或变量的名H. 称。
属性或变量名I. 称不J. 能是从字符串获取的字符或变量,而K. 必须是标L. 识符。
例:
year.month=”June”; year.month.day=9;
57. 大括号
A. 用一对大括号组合在一起,B. 形成一个代码块。
例:
on(release){
myDate=newDate();
currentMonth=mydate.getMonth();
}
58. 分号
A. ActionScript语句使用分号作为结束。
当然如果忽略了分号,B. 也能正确编译脚本,C. 只要不D. 是在同E. 一行中。
59. 圆括号
A. 定义函数时,B. 所有参数都放在圆括号中。
另外,C. 圆括号还可以改变运算顺序。
还可以在点的左边使用圆括号获取表达式的值。
例:
(newColor(this)).setRGB(0xff0000);
60. 大小写字母
A. 在ActionScript中,B. 只有关键字是区分大小写的,C. 其他则无所谓。
61. 批注
62. 关键字d