关于flash actionscript3 中,有关 文档类 和 动作-帧面板 的问题

在动作-帧面板中写代码,是不是这些代码只在这个帧上起作用?在动作-帧面板中写代码,和在文档类中写有什么区别???对于同一段完整有效的代码,在面板上有效,要怎么修改才能在文... 在动作-帧面板中写代码,是不是这些代码只在这个帧上起作用?
在动作-帧面板中写代码,和在文档类中写有什么区别???
对于同一段完整有效的代码,在面板上有效,要怎么修改才能在文档类中也有效?
展开
 我来答
Keensb
2013-04-10 · TA获得超过787个赞
知道小有建树答主
回答量:952
采纳率:0%
帮助的人:740万
展开全部
帧上的代码,如果是动作
像 trace(xxxx)、play()、gotoAndPlay(1)、stop()或执行其它自定义的函数(function),只有到了这个帧上才会执行。

如果是创建对象
像 var i:int = 0、var array:Array = new Array()、 function helloWorld(){trace("hello world")}
则所有帧都有效。
你可以在第一帧写 var i:int = 1;然后在最后一帧写 trace(i);

面板上写类,其实是利用了文档类中的addFrameScript函数功能。

addFrameScript(目标帧数 - 1,方法)

“目标帧数”的意思是:你想添加脚本的那一帧的帧数,它使用的是帧数列表的下标,所以要减1。

比如说你想在第1帧trace("hi"),在第15帧里trace("hello"),在第20帧trace("ni hao")

你可以试试创建一个文档类,在它的构造函数里面写
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
addFrameScript(0,fun1)//第1帧代码,目标帧数 - 1 = 0;

addFrameScript(14,fun15)//第15帧代码,目标帧数 - 1 = 14;

addFrameScript(19,fun20)//第20帧代码,目标帧数 - 1 = 19;

function fun1()
{
trace("hi");

trace(this.currentFrame);//输出当前帧数,看看是第几帧
}
function fun15()
{
trace("hello")
trace(this.currentFrame);

}
function fun20()
{
trace("ni hao")
trace(this.currentFrame);

}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

效果如同你写在第1帧写
trace("hi");
trace(this.currentFrame);

在第15帧写

trace("hello")
trace(this.currentFrame);

在第20帧写

trace("ni hao")
trace(this.currentFrame);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式