114。问:如何实现声音的暂停/播放效果? 答:在执行stop()命令时可以用sound对象的position属性取得当前声音文件的播放时间(毫秒),然后用start(time,loop)在当前位置播放即可。 115。问:如何定义二维数组? 答:下面定义一个20*20的二维数组,值全部为0 sarray = []; for (var i = 0; i<=19; i++) { sarray[ i] = []; for (var j = 0; j<=19; j++) { sarray[ i][j] = 0; } } 116。问:如何打开指定属性的窗口?[源码][/COLOR] 答:先JS在HTML页面中定义函数,然后在FLASH中用getURL()调用 (turbine) 117。问:如何通过MC中的按钮跳转场景? 答:在要跳转的桢上加标签,通过标签跳转:gotoAndStop("yourlable") (turbine) 118。问:如何随机设置MC颜色? 答:MC实例名为"mc" mycolor=new Color("mc") mycolor.setRGB(random(0xffffff)) (turbine) 119。问:如何实现双击效果? 答:把下面的代码放到按钮上: on (press) { time = getTimer()-down_time; if (time<300) { trace("ok"); } down_time = getTimer(); } (turbine) 120。问:如何使MC始终跟随鼠标旋转?[源码][/COLOR] 答:先计算MC横纵坐标与鼠标横纵坐标的差值,然后用Math.atan2()来计算旋转角度。 m_x = _root._xmouse-mc._x; m_y = _root._ymouse-mc._y; mc._rotation = PI=180/Math.PI*Math.atan2(m_y, m_x); (turbine) 121。问:如何做鼠标跟随效果? 答:基础代码如下,a为步长 mc._x+=(_root._xmouse-mc._x)/a mc._y+=(_root._ymouse-mc._y)/a (turbine) 122。问:如何在AS中创建类的继承? 答:创建一个MC的继承类 myClass=function(){ …… } myClass.prototype = new MovieClip(); (turbine) 122.问:能否详细讲解loadmovie 答:loadmovie的问题,然后就是加载之后属性的设置。。 loadMovieNum(url,level,method); url 就是你要加载的SWF文件的相对或绝对URL. 如"snow.swf"或"http://go8.163.com/6snow9/myflash/snow.swf"' target="_blank" >http://go8.163.com/6snow9/myflash/snow.swf";,强烈建议把要加载的swf都放在同一目录下 level指定被加载的swf放入到哪个层级(level)里,范围为0---n吧 具体多少,我也不清楚了。。若为0则被载载的swf动画会完全取替原来的动画哦!数字越大,就越在原动画上面! method 是传递参数的形式,有"POST"和"GET"两种 通过loadmovie加载进来的动画不需要时可以用unloadmovie命令把它卸除如 例:loadMovieNum("snow.swf",1);//加载snow.swf到第一层 接下来可以用getBytesLoaded();命令获得下载进度了如在第1帧: bytesload=_level1.getBytesLoaded(); bytestotal=_level1.getBytesTotal(); loadbar._xscale=int(bytesload/bytestotal*100); 当下载完成后,就可以对它进行控制了,如设置属性,播放,停止等如在第5帧: if (_level1.getBytesLoaded()>=_level1.getBytesTotal()){ _levle1.play(); play(); }else { gotoAndPlay(1); } 通过loadmovie加载进来的动画不需要时可以用unloadmovie命令把它卸除,如前面的snow.swf。。AS为:_level1.unloadMovie(); 演示:http://go8.163.com/6snow9/myflash/level/index.htm 源文件: http://bbs.flash8.net:8000/attach/2002/05/11/156567-nowload.zip 关 于 加 载 sw f到 target 的 方 法: loadMovie(url,target[,method]); 1.可使用loadMovie("snow.swf",mc);,若已经有一个空MC存在的话,可以用mc.loadMovie("snow");加载 2.被加载的s动画,有关于AS的地方最好用相对路径,而不用_root.mc.loadmovie.play();等形式的绝对路径,可使用如: _parent._parent.mc.play();//主场景的loadbar下的mc的帧要控制被加载到主场景空mc的动画播放 因为一旦被加载了,整个动画也就成了mc,用这样的语句可能会引起混乱 加载到MC实例源文件: http://gumu.net/non/attach/130807-myload.zip 作者:萧月痕 123.原来MX的FS命令是这样的。 相信不少朋友在MX版本中继续使用FS的EXEC命令,但是。。。。 偶多试不灵,前些日子得到答案,还得感谢偶那StudioMX安装包。 其实非常简单,在MX版本中的EXE调用更加严格,必须使用FLASHPLAYER或者自程序EXE的方式调用,HTML页面禁止。这里变化就是目录方面Macromedia做了安全措施。必须是当前路径的FSCOMMAND目录下,也就是说你得手工建立一个FSCOMMAND目录来放置你调用的EXE程序。这个很简单, 其语法命令同F5不变: fscommand("your.exe"); |