永发信息网

如何编写AS程序

答案:1  悬赏:0  手机版
解决时间 2021-02-06 14:20
如何编写AS程序
最佳答案
AS脚本文件是文本文件,你可以使用任意的文本编辑工具编辑它并将它保存在任意位置。要用AS来控制Flash元素,那么就得将AS代码按照一定的规则跟Flash关联起来,一般而言,将AS代码跟Flash关联起来的方法有四种。第一,将AS代码写Flash的帧上,这是最直观,最容易上手的方式。但是,除了实验之外,我们不建议你这么做;第二,将AS代码写到外部脚本文件中,然后用#include关键字插入到帧上。这种方法比第一种方法要进步一些,可以将设计和代码分开保存到不同地方。然而,本质上它跟第一种方法没有太大区别,这也是专业AS程序设计人员不太喜欢的方式;第三,将外部AS类脚本关联到Flash元件上,这种方法适合那些需要在Flash创造环境中绘制复杂图像的情况;第四,将AS代码书写到外部类脚本中,然后用文档类讲他们引入到Flash中。这是AS3的推荐代码书写方式,如果你有心成为一名位于牛A程序员和牛C程序员之间的AS程序员,那么请多多实践这种方式。下面的内容是这后三种脚本引入方式的例子。

使用#include关键字导入:
(1) 创建一个HelloWorld.txt,用记事本编辑打开它,在上面书写代码: trace("Hello World!");
(2) 将刚才创建的HelloWorld.txt的扩展名改成.as
(3) 启动Flash,新建一个Flash 文件(ActionScript3.0),并将其与HelloWorld.as保存到相同目录
(4) 选中Flash文件的第一帧,然后按下F9,打开脚本窗口,在里面输入:include "HelloWorld.as";
(5) 同时按下Ctrl+Enter键,测试你的影片

【注意】

1) 如果as脚本文件跟Flash 文件(.fla文件)不在同一路径下,那么必须为include语句指定绝对路径。例如,上例中的HelloWorld.as的存放路径为F:/AS/AS3/lib/HelloWorld.as
那么,那么include语句就应该写成 include "F://AS//AS3//lib//HelloWorld.as";
这时要特别注意,必须为文件路径中的每一个斜杠("/")前再添加一个"/",这是因为在编程语言中,斜杠要用转义字符来表示,两个斜杠("//")才能表示一个真实的"/"
2) 如果是AS2环境,include关键字前面必须加上符号"#",且语句最后一定不能有分号。

将外部类文件关联到Flash元件上:
(1) 新建一个ActionScript文件,保存为HelloWorld.as;
(2) 将下面的代码复制粘贴到HelloWorld.as文件中

[plain] view plain copy

package
{
import flash.display.MovieClip;

public class HelloWorld extends MovieClip
{
public function HelloWorld()
{
trace("HelloWorld");
}

public function say(arg:String)
{
trace(arg);
}
}
}

(3) 启动Flash,新建一个Flash 文件(ActionScript3.0),并将其与HelloWorld.as保存到相同目录
(4) 在Flash环境中按下Ctrl+F8,新建一个元件,元件类型为影片剪辑
(5) 选中库中刚刚新建的那个影片剪辑,右键点击,在弹出菜单上选择"属性"
(6) 元件属性设置面板中勾选"链接-为ActionScript导出"
(7) 在"类"文本框中输入"HelloWorld"(注意,不要双引号啊)
(8) 将设置好属性的元件拖到舞台上,创建一个实例
(9) 同时按下Ctrl+Enter键,测试你的影片

【注意】
1) 外部AS脚本文件的保存名字必须跟类名相同
2) 如果外部脚本在包中,必须以如下格式填写ActionScript导出类名:packageName.className
2) 如果要在帧上调用上例中元件所关联的类中的"say"方法,只需要选中舞台上的元件实例,在实例属性面板中为它起名为"t_mc",然后在主时间轴的帧上添加:t_mc.say("Welcome to home for as");

将外部AS类设置为文档类
(1) 新建一个ActionScript文件,保存为HelloWorld.as;
(2) 将下面的代码复制粘贴到HelloWorld.as文件中

[plain] view plain copy

package
{
import flash.display.Sprite;

public class HelloWorld extends Sprite
{
public function HelloWorld()
{
trace("HelloWorld");
}

public function say(arg:String)
{
trace(arg);
}
}
}

(3) 启动Flash,新建一个Flash 文件(ActionScript3.0),并将其与HelloWorld.as保存到相同目录
(4) 在舞台的空白处单击鼠标,然后在“属性面板->文档类”文本框里填入HelloWorld
(5) 同时按下Ctrl+Enter键,测试你的影片
(6) 要调用HelloWorld类中的say方法,只需要将函数调用语句添加到它自己的构造函数中就可以了

【注意】
1) 如果外部脚本在包中,必须以如下格式填写文档类名:packageName.className

2) 文档类引入脚本的方式只适用于Flash CS3以上版本的IDE环境
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
腾云酒店(三门峡灵宝市)怎么去啊,我要去那办
彩信怎么看
有没有觉得美图V4电池不太耐用
Intel 奔腾 G3240好不好
醋炙五灵脂是为了()。
泰州到郑州的汽车毎天有几班。
gta5克莱发消息让去小屋找他,在哪
鹏远宾馆(三门峡陕县)地址在什么地方,想过去
赣榆区大力混凝土公司我想知道这个在什么地方
试销的意思是什么啊?知道的请说下!
金钟国经常去美国的原因?
QQ号忘记密码啦!手机号也换啦,密保也忘了咋
汇佳宾馆(三门峡陕县)地址好找么,我有些事要
1、企业核算收到短期投资的现金股利时,可能
杭州宋城三日游请大家指教该怎么玩!还有具体
推荐资讯
炸坑的意思是什么啊?知道的请说下!
多少度可以穿毛衣毛领外套吗
迫痛的意思是什么啊?知道的请说下!
在哪里可以看到1至140集的精灵宝可梦xy(神奇
最近流行的托马斯火车蛋糕是什么做的
下币的意思是什么啊?知道的请说下!
疯狂大鸡排怎么去啊,有知道地址的么
王师傅是卖鞋的,一只鞋进价45元,现亏本大甩卖
华为mate8怎么进入工程模式
蜘蛛的孩子长大后要把妈妈分吃了吗?
民康大药房在什么地方啊,我要过去处理事情
DOTA中,场控的英雄有哪些?求资深玩家,优秀
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?