Flash编程基础(言简意赅 适合新人 没有基础也能看懂啊)
教学提要
ActionScript代码的输入与编辑
语法与结构
错误与调试
重点与难点
    重点是语法与结构,视课堂讲授的进度安排教学内容。由于安排的内容较多,若课堂上无法全部完成,则改为回去自学。
教学内容:
一、 ActionScript代码的输入与编辑
Flash是一个集美工、动画与编程于一体的集成开发环境,故而其编程方式与其它纯程序开发
的编程方式有所不同。Flash自诞生之日起,就是以美工、动画为主,以程序为辅的应用框架。我们可以理解为,Flash的总体结构就是一个影片剪辑(MovieClip),而几乎所有的多媒体内容都是挂在这个影片剪辑中的某个分支之上,包括脚本(代码),形成一个树形结构。自ActionScript3.0起,这个框架被规范化为显示对象层次结构。
一个典型的Flash作品的结构如下图所示:
典型的Flash作品的结构
这种以动画为主,代码为辅的程序框架的好处是显而易见的,因为游戏开发的许多工作与画面设计打交道,我们利用对象层次结构,在直观的环境下创作几乎整个游戏!
脚本的从属地位的好处显而易见,而其坏处也越来越被人们认识,就是对于其他程序开发人员来说,Flash的脚本有些莫名其妙,要想开发Flash程序,就必须先了解Flash的显示对象层次结构,动画,时间轴等原本与编程无多大联系的知识。目前,Flash界面设计与代码设计的分离成了趋势,例如通过flex等提供一个完全适合程序员的开发环境。由于游戏类型的应用,界面与程序结合非常紧密,所以还是采用原有的框架,在单独的Flash开发环境中完成所有的工作。
虽然Actionscript代码可以被挂在Flash中的许多分支上,但查看和编辑脚本却十分方便,因为所有的代码都在动作面板(脚本编辑器)中输入和编辑,只要用鼠标点击相应的位置或者对象,就会显示这个位置或对象所有用的代码。
打开一个Flash文档,按F9键,或者点击【窗口】|【动作】命令,即可打开动作面板。
动作面板如下图所示:
动作面板
由于接下来要经常和动作面板打交道,所以这里对动作面板进行较为详细的介绍。
脚本版本选择:
点击下拉按钮弹出ActionScript版本列表,选择其中的一个,则语言元素列表的内容会作相
应的变化。需要注意的是这里修改的是语言元素列表的显示内容,但本文档的ActionScript版本并不因此而被修改。
ActionScript版本选择
语言元素列表:
这是一个树型结构的目录,它列出了当前版本的语言元素、包以及索引。其中每个包里面有一个或多个类,每个类的属性、方法和事件也都列在树型结构中。如下图所示:
语言元素列表
双击其中的一个条目,就可以在代码窗口添加一行相应的代码,然后用脚本助手或者直接手动进行必要的修改。
当前代码位置:
当前代码位置指出脚本编辑器中的代码位于Flash文档的何处。典型的代码放置位置是主时间轴的帧上或者是影片剪辑中的帧上。
如果是AS2或更早版本,代码也可能是直接依附在影片剪辑或者按钮上。做法是单击一个剪辑或者按钮,然后打开动作面板,输入或者编辑其上的代码。相信有过Flash8或以前版本使用经验的读者对按钮上的on函数再熟悉不过了。
工具栏:
动作面板的工具栏给出了针对Flash代码的各种实用的按钮,这些按钮的说明如下图所示:
动作面板的工具栏及其解释
点击按钮将弹出与语言元素列表内容一样的菜单。点击按钮可以在编译之前查代码的语法错误,这些错误会在输出窗口中显示。点击可以将代码依据其结构自动缩进对齐,如果代码存在语法错误,则会提示语法错误,无法套用格式。
起右边的按钮,是Flash CS3新增的。这些按钮和Visual Studio .NET的相关工具类似,估计是汲取其优点而添加的。
脚本助手:
脚本助手开启时,会在动作面板的上部显示当前行代码的结构信息,提供详细的辅助信息。如图所示,点击for循环语句首行时脚本助手显示的信息:
脚本助手
开启脚本助手时无法自由修改脚本代码,而且挤占了动作面板许多空间,所以它只适合初学者在不清楚程序结构或者担心引入语法错误的情况下使用。当读者对ActionScript的语法与结构具有一定的了解之后,应该取消脚本助手,而在代码窗口中自由地编辑代码。
二、 语法与结构
本章节讲解ActionScript的语法与结构,但并不按教科书的方式详细讲解。而是完全将Flash CS3看作是一种面向对象的编程开发环境,以最简练的代码讲解ActionScript的语法
与结构。从简练的代码中引申出来的各种编程概念和知识面,则以列表的方式平铺。这种方法可以使大家利用以前所学的其它语言的编程知识,快速过渡到ActionScript编程上来。
1) 第一段示例代码
打开Flash CS3 Professional,选择【文件】|【新建】,或者按CtrlN,弹出新建文档对话框。选择“Flash文档(ActionScript3.0)”,按确定新建一个Flash文档。点击“图层1”的第1帧,按【F9】弹出动作面板,输入以下代码:
//这是我第一次写ActionScript脚本
var sum:Number;
var count:Number = 5;
sum = 0;flash入门教程视频
for (var i:Number = 1; i<=count; i++) {
    sum = i*(i+1)/2;
    trace("1累加到"+i+"的值为:"+sum);
}
如下图所示:
第一个脚本
注意:下文若提到“输入以下代码”时,就是在新建文档的图层1的第1帧的动作面板中输入下框中的代码。
在调试程序前保存文件是一个良好的习惯,因为谁也不能肯定刚刚编写的脚本不会在调试过程中造成死机,若调试过程中出现死机或者意外退出Flash程序,那么没有保存的内容将会丢失。按CtrlS保存文件,然后选择【控制】|【测试影片】,或者按CtrlEnter测试影片。这时会弹出两个窗口,一个是Flash作品的窗口,因为刚才没有建立任何可见的元素,所以这个窗口是空白的。还有一个是输出窗口,当有trace输出语句或者出现语法错误的时候就会自动弹出输出窗口。
本段程序测试时输出窗口如下图所示:
本程序的输出
这段代码包含以下知识点:
代码注释的语法
变量声明与赋值的方法
数据类型与默认值
显式类型指定及其意义
程序结构语句
基本数学运算
trace语句介绍
现在让我们一行行地认识这些代码:
//这是我第一次写脚本
这是一行代码注释,编译器将忽略这行文字。注释提高了代码的可读性。单行注释由“//”开始,在代码中呈灰。如果需要多行注释,则使用“/*”开始,用“*/”结束。一个典型的多行注
释如下所示:
/********************************
*          Boat.as              *
*          轮船类              *
*          作者:肖          *
*********************************/
再看本例接下来的两行代码:
var sum:Number;
var count:Number=5;
这两行代码声明两个数值类型的变量sumcountvar是声明变量的关键字,sumcount是变量名称。Number指出变量数据类型为数值。第二行代码声明变量count的同时赋值一个初始值5
对于面向对象的程序设计语言来说,所有的数据类型都是对象,都是类。Flash的内置类可
以分为两种,一种是基元类型,也被成为原始类型,它们一般用来存储一些简单的数据,有的原始类型还具有一些针对所存储的数据的属性和方法。原始类型是构建复杂类的基本元素。另一种是复杂类,它们是由class关键字定义的类,可以认为是程序的构件,一般具有成套的属性、方法和事件。原始类型的变量直接存储数据,而复杂类型的变量存储的是类的引用。更多的关于类与对象的介绍,请参看“Flash的内置类”以及“面向对象程序设计”章节。
下表列出了ActionScript 常用的原始类型,以及其简要的说明,它们的用法都是大同小异的:
数据类型
说明
Boolean
Boolean 数据类型包括两个值:true false。对于此类变量,其它任何值都是无效的。已经声明但尚未初始化的布尔变量的默认值是 false
Number
此数据类型可以表示整数、无符号整数和浮点数。若要存储浮点数,数字中应该包括一个小数点。若没有小数点,数字将被存储为整数。
int
存储32位有符号整形数据。使用int类型有助于利用CPU快速处理整形运算的能力。(仅适用于ActionScript3.0
uint
存储32 位无符号整数的数据。uint 类主要用于像素颜值(ARGB RGBA)和 int 数据类型无法很好工作的其它情况。(仅适用于ActionScript3.0
String
String 数据类型表示 16 位字符的序列,可能包括字母、数字和标点符号。字符串存储为 Unicode 字符,使用 UTF-16 格式。对字符串值的操作返回字符串的一个新的实例。
默认值

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。