| 订阅 | 在线投稿
分享
 
 
 

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

来源:互联网  宽屏版  评论
2008-12-13 08:23:38

很久没碰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

  很久没碰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- 王朝网络 版权所有