flash脚本的几个疑问(100分~)

来源:百度知道 编辑:UC知道 时间:2024/06/16 05:15:04
大家请看这段代码:(flash 8.0,action script 2.0)
1 var num
2 startDrag ("_root.xxx",true)
3 duplicateMoiveClip("_root.xxx","xxx"+num,Number(num)+1)
4 num=Number(num)+1
5 if(num>=20) {
6 num=0
7 }

问题1,在开始第一行给变量赋值时,如果没有给定初始值,那么是什么类型的数据?为何使用了 var num:Number 之后显示出来的num 的值依旧还是NaN?
问题2,第五行,如果使用 "if(num>20)",那么最后输出的num值依旧是NaN,请问这是为什么?
问题3,为什么有时测试时flash能够循环播放,有时又不能呢?如何才能做到"测试时"的循环播放?

请求1,请FLASH脚本高手留下QQ,稍作点拨,在下再将100分双手捧上.
其实第二个问题才是最令我困惑的,很奇怪的是,如果用大于等于号,就能够正确执行,如果使用大于号,那么就不会出现预期效果,(两重种情均不报错),我参考的是一个鼠标残影效果的范例,就是先制造一个渐变元影片剪辑(xxx),然后用动态脚本复制到不同的层上去,总之,加个等号,一切如范例所示,不加的话,不报错,但是不会有残影效果。
此问题一解答,立刻揭帖送分~~
具体内容参考:http://www.onlinedown.net/soft/1014.htm,的最后一章内容。

谢谢各位的热心解答

靠 怒了
as2.0什么破玩意 不用它了
我给你写了段3.0的,直接写到主界面第一桢上
舞台上不要放任何东西

然后把你的那个旋转的元件的:属性 ->链接那一项选上
选1 和3 个
然后把类在类那填 myMC
基本不管它就用默认的 就行了 然后测试下

下面是代码:郁闷死了
import myMC;
var myMcNew:myMC = new myMC();
myMcNew.x = -60;
myMcNew.y = -60;
var myIndex:Number = 0;
myMcNew.startDrag();
addChild(myMcNew);
this.addEventListener(Event.ENTER_FRAME,myEnterHandle);
function myEnterHandle(e:Event):void
{
var myNewMC:myMC = new myMC();
myNewMC.x = this.mouseX;
myNewMC.y = this.mouseY;
addChild(myNewMC);
if(myIndex<10)
{
myIndex++;
}
else{removeAChild();}

}

function removeAChild():void
{
this.removeChildAt(0);
}

1.用var num:Number是不标准的,如果非要这么用就是:var num:Number=0;要不你就简单地用num=0行了.像它那样用var num也行,它默认为字符,所以后面要用Number(num)转为数值.

2.这是因为num不是数值,NaN的意思是is Not a Number,这不是一个数值.所以最有效的方法是一开始设置:num=0;就什么事也没有了,后面