方法1——反射方法:
var ClassRef:Class = getDefinitionByName(getQualifiedClassName(t_mc)) as Class;
var clone_mc:DisplayObject = new ClassRef(); addChild(clone_mc);
方法2——构造器方法:
var ClassRef:Class = t_mc.constructor;
var clone_mc:MovieClip = new ClassRef();
addChild(clone_mc);
方法3——编译器自动生成类方法:
此方法是方法1的变种,它比方法1更加简单、粗暴、有效。下面我将为大家特别讲解一下这个方法:
首先,在库中创建一个影片剪辑,随意绘制一个图形,然后在第一帧上加上一个单行注释符“//”;
接下来,将刚才创建的影片剪辑拖到舞台上,创建一个示例,命名为“t_mc”;
现在,重点来了,我们在主时间线上写下如下所示语句,然后按下Ctrl+Enter,仔细观察一下输出面板中输出的信息。
trace(getQualifiedClassName(t_mc));
你发现,输出结果是“_fla::Timeline_1 ”。出于对函数getQualifiedClassName的作用的清晰理解,你立刻就想到,这个Timeline_1应该就是编译器自动为我们的库中的 影片剪辑创建的类。我们貌似可以用这个类new出多个一样的影片剪辑来哦!是不是这样呢?我们来验证一下:
var clone_mc:DisplayObject = new Timeline_1();
addChild(clone_mc);
Ctrl+Enter,你惊喜的发现,我们成功了!实验到这里,可能很多朋友已经兴奋地准备去写学习总结了。兄弟们,不要急,我们的实验还没完——现在, 我们用同样的方法,再次在库中创建一个影片剪辑。然后也将它拖到舞台上创建一个实例,取名为“d_mc”。接下来,我们将 trace(getQualifiedClassName(t_mc)); 语句中的“t_mc”改成“d_mc”。测试一下影片,这次输出的结果竟然是“flash.display::MovieClip”。
忽忽!傻了吧,不能用new MovieClip来复制“d_mc”了吧!
咋解决这个问题呢?我给大家一点点提示:试试将库中那两个影片剪辑各取一个响亮的名字(名称),然后再看一下输出的类名是什么。
使用以上方法复制影片剪辑时需要注意:
必须在库中创建影片剪辑,并将库中的影片剪辑拖到舞台上创建了一个实例;
影片剪辑的帧上必须包含代码(注释也行,最简单的就是加一个单行注释符号“//”);
相关推荐
FLASH作为一个强大的多媒体开发平台,as3.0是其中的一个版本,本文档总结了 FLASH as3.0中的一些常用代码,涵盖了按钮事件、超链接、数学运算、随机数、画线、画三角形、影片剪辑属性设置、复制影片剪辑、变量定义...
在本文中,我们将深入探讨如何使用Flash AS3.0与XML技术来创建一个简单的幻灯片应用程序。Flash ActionScript 3.0(AS3.0)是Adobe Flash平台上的编程语言,它为开发者提供了强大的功能,可以创建丰富的交互式内容。...
在AS3.0中,处理按钮事件的方法与AS2有所不同。在AS3.0中,我们不再使用`on(release)`语法,而是通过监听`MouseEvent.CLICK`事件来响应按钮点击。例如: ```actionscript bt1.addEventListener(MouseEvent.CLICK,...
在 AS3.0 中,可以使用 `new` 关键字来复制影片剪辑。例如,`var mc:MovieClip = new snow();` 用于创建一个新的影片剪辑对象 `mc`,然后使用 `addChild(mc);` 将其添加到显示列表中。 8. 变量定义和赋值 在 AS3.0...
### AS3.0常用代码详解 #### 全屏与退出功能实现 在Adobe Flash中,ActionScript 3.0(简称AS3)是用于动画、交互性和多媒体内容开发的强大编程语言。下面详细介绍如何使用AS3实现全屏模式切换以及应用程序退出...
### Flash AS3.0基本应用知识点详解 #### 一、Flash Player API介绍 **Flash Player API** 是一种专为Adobe Flash Player设计的应用程序接口。它包括了一系列的包、类、函数、属性、常量、事件和错误等组件,这些...
思考延伸部分提到,如果将这个SWF制作成影片剪辑或类,就可以方便地在其他项目中复用。这样做的好处是提高了代码的可重用性,使得开发更加高效。 总结来说,这个代码实例展示了如何在AS3中加载、播放声音,并通过...
【FLASH起步AS2.0教程】是一篇针对初学者的指南,主要介绍如何开始...尽管AS2.0现在已经被更新的AS3.0所取代,但对于初学者来说,AS2.0仍然是一个很好的起点,因为它提供了足够的基础训练,以便过渡到更现代的版本。
在Flash AS3中,编程涉及的关键概念主要集中在动作脚本(ActionScript)3.0上,这是一种用于控制和交互Flash内容的编程语言。以下是一些从提供的文件内容中提取的重要知识点: 1. **残影效果**: 通过`...
尽管AS3.0是更现代且面向对象的语言,更适合专业程序员,但AS2.0以其相对简单的语法和对初学者的友好性而被广泛使用。 案例一展示了如何使用AS2.0脚本来创建逼真的下雨效果。传统方法是通过形变动画制作一滴雨水...
3. 兼容性考虑:虽然AS2.0已经被AS3.0取代,但仍有大量的旧版Flash内容在使用。在开发时,应确保代码兼容不同版本的Flash Player,以便更多用户能够访问。 总结,利用AS2.0创建电子书,不仅提供了一种新颖的阅读...
如果你想在场景中定义一个变量并在子影片剪辑(MC)中修改它,你可以使用`root`关键字来访问根级的变量。在场景中定义`var a=1;`,然后在子MC中通过`MovieClip(root).a=2;`来修改这个变量。如果需要访问元件内的变量...
- `_root.mc1.mc2.mcn.play()`:从根电影剪辑访问子级电影剪辑,并调用`play()`方法。 - `_parent`:访问当前对象的父对象。 - `this`:指当前对象自身。 - `_leveln`:访问特定层级的对象。 #### 三、实战练习 **...
- MovieClip对象被频繁提及,这是Flash中用于表示动画剪辑的主要类,可以嵌套其他MovieClip对象。 - “gotoAndPlay()”和“attachMovie()”等方法用于在MovieClip之间导航和复制显示对象。 - 对于MC(MovieClip)...
在Flash开发中,创建动态效果如雪花飘落是常见的需求,尤其在AtionScript 3.0环境下,这种效果可以更加逼真且高效。本教程将详细解析如何使用ActionScript 3.0来制作一个雪花飘落的动画效果。 **一、制作雪花元件**...
在ActionScript 3.0中,你可以使用以下代码: ```actionscript import flash.display.Stage; stage.displayState = StageDisplayState.FULLSCREEN; ``` 这段代码将当前的Flash影片切换到全屏模式。若要退出全屏,...
本资料"Flash游戏制作常用代码解析"主要聚焦于ActionScript 3.0(AS3),它是Flash开发中的最新版本,具有更高效、更面向对象的特性。 一、基础语法 ActionScript 3.0采用了严格的类型系统,变量必须先声明类型再...
` (myContent_mc是内容电影剪辑) 4. 监听滑动事件:`myScrollBar.addEventListener(ScrollEvent.SCROLL, onScroll);` 5. 滑动事件处理函数:`function onScroll(event:ScrollEvent):void { content_mc....
- **编写循环代码**:使用AS3(ActionScript 3.0)编写代码,例如创建一个for循环,控制影片剪辑(MC)在每个帧上显示不同的图片。 ```actionscript import flash.events.Event; var imageIndex:uint = 0; // 图片...