关于遍历循环play每一帧,针对帧里面的元件进行读取的疑问

来源:互联网 发布:php是工程师吗www. 编辑:程序博客网 时间:2024/05/12 01:39

在mc中gotoAndPlay() 或 nextFrame(),遍历里面的每一帧里面的文本框,进行赋值似乎并不可行,如下代码:

this.setMovieClipText(this.tab1_2,["txt"], ["234"]);//元件tab1_2是一个多帧mcfunction setMovieClipText(mc:MovieClip,textName:Array, text:Array):void{         if(mc&& text != null)         {                   mc.gotoAndStop(1);                   for(var j:int = 0; j < mc.totalFrames; j++)                   {                            //mc.gotoAndStop(j+1);                            for(var i:int = 0; i < textName.length; i++)                            {                                     vartxt:TextField = mc.getChildByName(textName[i]) as TextField;                                     if(txt)                                     {                                               txt.text= text[i];                                     }                            }                            mc.nextFrame();                   }         }}

针对元件每一帧进行draw变成bitmapdata又可以成功,如下代码:

This. setBitmap(this.aaa)// 元件aaa是一个多帧mcfunction setBitmap(mc:MovieClip):void{if (mc){mc.gotoAndStop(1);for (var j:int = 0; j < mc.totalFrames; j++){//mc.gotoAndStop(j+1);var bgBitmapData:BitmapData = new BitmapData(mc.width, mc.height, true, 0x00000000);bgBitmapData.lock();bgBitmapData.draw(mc,new Matrix(1,0,0,1, 0, 0));bgBitmapData.unlock();var bm2:Bitmap = new Bitmap(bgBitmapData);this.addChild(bm2);bm2.x = j * 70 + 281;bm2.y = 245;mc.nextFrame();//trace(j, txt.name, txt.text);}}}

求原因??


本想上传源码的,无奈不支持上传fla文件。



原创粉丝点击