打印

[Flash教程] flash mx2004入门与进阶实例——动作脚本(11)

flash mx2004入门与进阶实例——动作脚本(11)



第六章 动作脚本入门
第四节 基本命令和程序结构控制(4)

(2)循环结构
循环结构是三种基本程序结构之一。它通过一定的条件控制动作脚本中某一语句块反复执行,当条件不满足时就停止循环。这种程序结构对实现交互性的影片有着举足轻重的作用,在制作动画时,我们经常使用这种程序结构。
for语句是实现程序循环结构的语句,它的语法格式更紧凑,在循环起始语句中包含了循环控制变量的初始值、循环条件和循环控制变量的增量,清楚明了,因此使用较为广泛。for语句使用的一般形式为:
for(表达式1;条件表达式;表达式2)
{
代码块
}
表达式1:是一个在开始循环序列前要计算的表达式,通常为赋值表达式。
条件表达式:计算结果为true(真)或false(假)的表达式。在每次循环前计算该条件,当条件的计算结果为true时执行循环,当条件的计算结果为false时退出循环。


1 2 3 4 5 6 7 8


表达式2:一个在每次循环迭代后要计算的表达式,通常使用带++(递增)或--(递减)运算符的赋值表达式。
for语句的执行过程是,先计算“表达式1”的值,然后判断“条件表达式”的值是true(真)还是false(假),如果条件是true,那么执行循环体中的代码块,执行完以后,再执行“表达式2”,接着开始新一轮的循环;如果条件是false,那么就跳出循环,执行for语句的后继语句。如图6-4-2是for语句构成的循环结构流程图。

图6-4-2 for语句循环结构流程图


1 2 3 4 5 6 7 8


4.常用对象简介
mx 2004的actionscript是真正面向对象的编程语言,类和对象是面向对象编程语言的基本元素和概念。下面我们将几个最常用的对象做个简单介绍。
(1)math对象
作为一门编程语言,进行数学计算是必不可少的。在数学计算中经常会使用到数学函数,如取绝对值、开方、取整等,还有一种重要的函数是随机函数。actionscript将所有这些与数学有关的方法以及随机数都集中到一个类里面——math方法。
math.abs绝对值函数
作用:用来计算一个数的绝对值。
例如:计算-9的绝对值,赋给x:
x=math.abs(-9);
math.round 四舍五入取整函数
作用:方法将一个浮点数四舍五入为最接近的整数。
例如:输出9.4的取整,即输出9。


1 2 3 4 5 6 7 8


trace(math.round(9.4));
math.min、math.max 最大、最小值函数
作用:math.min方法取两个数中较小的一个数,math.max方法取两个数中较大的一个数。
例如:
trace(math.min(9, 8));
trace(math.max(9, 8));
输出窗口中显示:8、9。
math.sqrt平方根函数
作用:计算一个数的平方根,
例如:计算64的平方根:
trace(math.sqrt(64));
输出窗口中显示:8
math.random()随机数函数
作用:该方法返回一个大于或等于0并且小于1的随机浮点数。


1 2 3 4 5 6 7 8


例如:返回 0、1、2、3 或 4 中的一个随机值:
math.random()*5;
随机数在flash中的应用非常广泛。一些下雨、下雪的场景动画中常常用到随机数的设定,以取得一种自然的特效。
(2)color对象
运用好的色彩可以使flash作品具有更大的感染力,要做出好的作品在色彩搭配和控制上都得搭配合适才行。在actionscript中,color对象专门用来管理颜色。使用color对象可以实现许多色彩特效。
new color()
作用:创建color对象的实例。
例如:mycolor = new color(mymc);
setrgb()
作用:设置影片剪辑实例对象的rgb值,即颜色。
setrgb的参数是以十六进制表示的,0x表示十六进制,后面的6位数字每两位为一组,分别表示红、绿、蓝3种颜色成份。如0xff0000表示纯红,0x00ff00表示纯绿,0x0000ff表示纯蓝,0xffff00表示纯黄。


1 2 3 4 5 6 7 8


例如:mycolor.setrgb(0xff0000);
getrgb()
作用:获取由setrgb方法指定的颜色值。
(3)date对象
date对象使你可以获取相对于通用时间或相对于运行flash player的的日期和时间值。
new date()
作用:创建一个date对象的实例。
例如:mydate = new date(2003, 7, 8);
这是指定时间创建一个date对象的实例。
getdate()
作用:获取系统时间来创建date对象的实例。
例如:


1 2 3 4 5 6 7 8


mydate = new date();
year = mydate.getyear();
(4)sound对象
在时间轴中直接嵌入声音是制作flash mv的一种通用手法,但是这种方法除了从头至尾地播放声音外,并不能对声音进行很好的控制。actionscript内置的sound对象为我们提供了管理和控制声音的一种好方法。
new sound()
作用:创建sound对象的实例。
例如:mysound = new sound();

attachsound()
作用:在影片播放时将【库】中的声音元件附加到场景中。
要使用该方法将声音附加到场景中,首先需要在【库】中为声音添加链接。在要添加链接的声音元件上单击鼠标右键,在弹出的快捷菜单中选择【链接】命令,弹出【链接属性】对话框,选择【为脚本导出】和【第一帧导出】两个选项。然后才可以在程序中编写类似于下面的程序代码:


1 2 3 4 5 6 7 8


mysound.attachsound("music");
start()和stop()
作用:让声音开始播放和停止用sound对象播放的声音。
例如:
mysound.start();//开始播放声音
on (release) {
mysound.stop();//停止播放声音
}


1 2 3 4 5 6 7 8


TOP

返回顶部
AYBlue

Processed in 0.056452 second(s), 7 queries.

当前时区 GMT+8, 现在时间是 2009-1-8 22:17 京ICP备06054220号

清除 Cookies - 联系我们 - 163K.com - Archiver - WAP