问题
当你有了 ActionScript 工程后,接着就需要知道任何输入代码。
解决方法
在类结构中或方法体中添加 ActionScript 代码
讨论
在以前的 ActionScript 1.0 和 2.0 中, 有多种途径添加代码:在时间线上,按钮上或电影剪辑上,在 电影剪辑的时间线上通过#include 命令引入外部的 as 文件或 class 文件。但是 ActionScript 3.0 是 完全基于类的,所以所有的代码都必须放置在类文件中。当你创建一个新的 ActionScript 工程后,主类文件被自动创建,并且在代码视图中代开了,刚开始
的代码大概是这样的:
package {
import flash.display.Sprite;
public class ExampleApplication extends Sprite
{
public function ExampleApplication( )
{
}
}
}
可能你很熟悉 ActionScript 2.0 中的类, 但是 3.0 发生了很多变化,这些我们将在第二章讨论,在这
里先学完基础概念先。
首先注意到代码顶层有个关键字 package ,Packages(包) 是用来组织一群相关联的类文件的。
在 ActionScript 2.0, 包是用来判断类文件的路径。在 ActionScript 3.0 中必须指定包,例如,我们 有个 utility 类包,要这样申明:
package com.as3cb.utils {}
如果你不指明包名,那么该类就输入最顶层的默认包。
接下来,加入 import 语句,引入一个类就相当于在当前的代码文件中创建了使用该类的快捷方式,
这样我们就不需要输入全路径来使用它了。例如,你可以使用下面的 import 语句:
import com.as3cb.utils.StringUtils;
这样我们就可以直接引用 StringUtils 这个类了。从 flash.display 引入 Sprite 类是因为默认的类文 件继承了 Sprite 类。
接下来就看到我们的主类 ExampleApplication,注意到在 class 关键字前有个关键字 public ,表明 该类是共有的。最后有个公共方法,方法名和主类一样,这种方法称为构造器,当一个类实例被创 建时,其构造器会被自动执行,在这里,当 swf 文件被 Flash 播放器载入时构造器就会被执行。
In this case, it is executed as soon as the .swf is loaded into the Flash player. So where do you put your code to get it to execute? Generally, you start out by putting some code in the constructor method. Here's a very simple example that just draws a bunch of random lines to the screen:
package {
import flash.display.Sprite;
public class ExampleApplication extends Sprite {
public function ExampleApplication( ) {
graphics.lineStyle(1, 0, 1);
for(var i:int=0;i<100;i++) {
graphics.lineTo(Math.random( ) * 400, Math.random( ) * 400);
}
}
}
}
保存然后运行程序,浏览器会打开一个 html 文件,显示一个 swf 里画了 100 条随即直线。正如你所
看到的,当 swf 被播放器载入后构造器就会被执行。
在这里联系中,我们把代码直接写在了构造器中,但时最好的办法是在构造器中引用一个方法,在
这个方法中添加代码.
对于新手来说,现在你已经学会了如何添加代码了。
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |