主题:  求教各位大虾,这个是不是flash mx的问题....

flashfun

职务:普通成员
等级:1
金币:0.0
发贴:65
#12002/9/23 10:36:56
求教各位大虾,这个是不是flash mx的问题,执行下列语句,为何要按两下按钮,急盼!!!
on (release) {
_root.createEmptyMovieClip( "myline", 4 );
loadvariablesnum("myasp.asp","","POST");
with ( _root.myline )
{
nn=myarray.length
lineStyle( 0, 0x00ff00, 100 );
moveto(1,myarray[1])
for (i=1;i lineTo(i,myarray[i]);
}
}
}



金山羊

职务:普通成员
等级:4
金币:10.0
发贴:827
#22002/9/23 12:53:18
加载数据需要一定的时间,并不能瞬间加载完成


5d.cn
FLASHDEP
TECHNOLOGY SUPPORT
JAVA/ACTIONSCRIPT/javascript
CFML/JSP/COLDFUSION/FLASH REMOTING
JRUN/COLDFUSIONMX
FLASH/DREAMWEARER

5D荣誉版主

职务:普通成员
等级:2
金币:1.0
发贴:515
#32002/9/23 13:12:10
给他点缓冲时间,最好加个完成判断。



janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#42002/9/23 13:15:36
让后台程序传回一个变量,在flash中用onData事件捕捉。在未捕捉到之前,进行一个两帧循环



flashfun

职务:普通成员
等级:1
金币:0.0
发贴:65
#52002/9/23 16:49:16
谢谢各位大虾,我有一个疑问:加载数据固然需要一定的时间,但不至于通过二次按钮来完成 (我试过2,3个数据的传递,但效果一样,只有当我把loadvariablesnum("myasp.asp","","POST"); 语句在on (release) {}前面,才能实现按一次按钮来完成画线,难道只能这样吗?

又:::我在本机上和网络上都测试过,均需两次,第一次是执行 loadvariablesnum("myasp.asp","","POST"); 把数据调入,,第二次是执行
with ( _root.myline )
{
nn=myarray.length
lineStyle( 0, 0x00ff00, 100 );
moveto(1,myarray[1])
for (i=1;i lineTo(i,myarray[i]);
}
}
绘制曲线,为何一定要按两下按钮,费解!!!



5D荣誉版主

职务:普通成员
等级:2
金币:1.0
发贴:515
#62002/9/23 18:17:55
试试:
btn.onRelease=function() {
_root.createEmptyMovieClip( "myline", 4 );
loadvariablesnum("myasp.asp","","POST");
_root.myline .onEnterFrame=function(){
if(myarray!=undefined){
this.onEnterFrame=undefined
this.nn=myarray.length
this.lineStyle( 0, 0x00ff00, 100 );
this.moveto(1,myarray[1])
for (i=1;ithis.lineTo(i,myarray[i]);
}
}
}
}
}
数数}有没有少
利用onEnterFrame判断myarray是否load完毕



flashfun

职务:普通成员
等级:1
金币:0.0
发贴:65
#72002/9/24 9:18:31
谢谢mmommo的帮助,但还是不行,效果与以前的一样!!!



5D荣誉版主

职务:普通成员
等级:2
金币:1.0
发贴:515
#82002/9/24 11:10:13
代码我不能保证在你的环境里能很好的运行,但是原理如下:

利用onEnterFrame(每帧触发)判断是否load完毕,可以用!=undefined判断。load完毕后才执行相应的操作。

其实janlay都说的很清楚了。