AS 3.0下的MC创建复制及访问

王朝other·作者佚名  2008-12-13
窄屏简体版  字體: |||超大  

很久没碰flash的东西了,当初也是为了让自己更好的理解actionscript从设计转学了.net c#,再回过头来看AS 3.0就感觉比较“亲切”了,不像以前怎么看觉得怎么不习惯。不过以前的as版本和3.0已经有本质上的区别了,不少以前用的很顺手的代码得使用新的实现方式,得适应下。

主要看了MC的创建复制及访问,这个对于在制作和数据库结合的flash网站也是比较重要的一个环节。

MC的创建:view plaincopy to clipboardprint?

//普通方式创建一个名为mc2的影片剪辑----------------

var mc2:Sprite = new Sprite(); //和C#一样,初始化一个实例

mc2.graphics.beginFill(0xFFCC00); //设置填充色

mc2.graphics.drawCircle(50, 50, 40); //画圆

mc2.buttonMode = true;

addChild(mc2); //把mc2添加到影片中

//普通方式创建一个名为mc2的影片剪辑----------------

var mc2:Sprite = new Sprite(); //和C#一样,初始化一个实例

mc2.graphics.beginFill(0xFFCC00); //设置填充色

mc2.graphics.drawCircle(50, 50, 40); //画圆

mc2.buttonMode = true;

addChild(mc2); //把mc2添加到影片中MC的复制:

当影片中已经存在一个mc1的影片剪辑view plaincopy to clipboardprint?

//使用复制的方法创建一个名为mc3的mc1副本影片剪辑------------

//取得mc1对象的基类的完全限定类名

var classNameStr :String = getQualifiedClassName(mc1);

//取得classNameStr的类的类对象引用

var className : Class = getDefinitionByName(classNameStr) as Class ;

var mc3:Sprite = new className() as Sprite; //实例化一个影片剪辑

addChild(mc3); //把mc3添加到当前影片中

//使用复制的方法创建一个名为mc3的mc1副本影片剪辑------------

//取得mc1对象的基类的完全限定类名

var classNameStr :String = getQualifiedClassName(mc1);

//取得classNameStr的类的类对象引用

var className : Class = getDefinitionByName(classNameStr) as Class ;

var mc3:Sprite = new className() as Sprite; //实例化一个影片剪辑

addChild(mc3); //把mc3添加到当前影片中使用循环方式复制N个mc1的影片剪辑view plaincopy to clipboardprint?

//使用循环的方法创建n个mc1副本影片剪辑-----------------

var shells:Array = new Array();

for (var i:int = 0; i<6; i++) {

var mc:Sprite = new className() as Sprite; //实例化一个影片剪辑

mc.x = i * 150; //设置显示位置

mc.y = 100 + i * 20; //设置显示位置

addChild(mc); //把mc添加到当前影片中

shells.push(mc) //把mc添加到数组中,以便访问复制的MC

}

//使用循环的方法创建n个mc1副本影片剪辑-----------------

var shells:Array = new Array();

for (var i:int = 0; i<6; i++) {

var mc:Sprite = new className() as Sprite; //实例化一个影片剪辑

mc.x = i * 150; //设置显示位置

mc.y = 100 + i * 20; //设置显示位置

addChild(mc); //把mc添加到当前影片中

shells.push(mc) //把mc添加到数组中,以便访问复制的MC

}MC的访问:

普通的访问view plaincopy to clipboardprint?

//如刚才的mc3,来设置下mc3的X坐标

mc3.x = 100;

//如刚才的mc3,来设置下mc3的X坐标

mc3.x = 100;循环的方法创建n个mc1副本影片剪辑的访问view plaincopy to clipboardprint?

//使用循环的方法设置刚才创建的n个mc1副本的mc11txt的内容

//这里的i是因为前面已经声明过了所以这里使用没有再声明

for(i = 0;i<6;i++){

shells[i].mc11.mc11txt.text = "这是第" + i;//控制的话就通过shells[0]~shells[num]来控制,这样就类似给N多个MC实例名了

}

from:http://blog.breakn.net/article.asp?id=445

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航