actionscript3允许把外部swf直接用Embed标记嵌入到主类中(当然用UrlLoader动态加载也行)
原 作者:菩提树下的杨过
出处:http://yjmyzz.cnblogs.com
关键点:
设计师把素材放入到库中时,一定要指定类名,这样代码才能创建这些类的实例。
如上图所示,这里库中放了三种基本的素材(按钮,位图,电影夹),然后在代码中可以这样处理:
package
{ import flash.display.Sprite;
import flash.display.DisplayObject;
import flash.display.SimpleButton;
import flash.events.MouseEvent;
import flash.display.MovieClip;
import flash.display.BitmapData;
import flash.display.Bitmap; public class Demo extends MovieClip
{
[Embed(source = "skin.swf",symbol = "ButtonPause")]
private var ButtonPause:Class; [Embed(source = "skin.swf",symbol = "ButtonPlay")]
private var ButtonPlay:Class; [Embed(source = "skin.swf",symbol = "LogoImage")]
private var LogoImage:Class; [Embed(source = "skin.swf",symbol = "TestMovie")]
private var TestMovie:Class; public function Demo()
{
init();
} private function init():void
{
var btnTest:SimpleButton = new ButtonPause() as SimpleButton;
trace(btnTest,btnTest is SimpleButton);//Demo_ButtonPause0,true
addChild(btnTest);
btnTest.x = btnTest.y = 50;
btnTest.addEventListener(MouseEvent.CLICK,btnTestClick); var btnTest2:SimpleButton = new ButtonPlay() as SimpleButton;
trace(btnTest2);//Demo_ButtonPlay1
addChild(btnTest2);
btnTest2.y = 50;
btnTest2.x = 100;
btnTest2.addEventListener(MouseEvent.CLICK,btnTest2Click); var bmd:Bitmap = new LogoImage() as Bitmap;
trace(bmd);//Demo_LogoImage2
addChild(bmd);
bmd.x = bmd.y = 200; var testMovie:MovieClip = new TestMovie() as MovieClip;
addChild(testMovie);
testMovie.x = testMovie.y = 180;
trace(testMovie);//Demo_TestMovie3 } private function btnTestClick(e:MouseEvent):void
{
trace("btnTest 被点击了!");
} private function btnTest2Click(e:MouseEvent):void
{
trace("btnTest2 被点击了!");
}
} }
Embed 后面还跟着一个symbol属性,该属性就是指明你要调用哪一个MC,就是SWF里面的MC,记得,都要为每个MC做链接,并链接名字要与symbol里的名字致
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
as3中的embed的更多相关文章
-
as3中的多线程
从fp11.4开始支持worker技术, 即as3中的线程概念, 到了fp11.5, flascc中开始支持pthread家族来创建线程. 总的来说, as3中有两种创建线程的方法: 1.直接在as3 ...
-
AS3中释放优化的几条常识
as3中垃圾和堆弃物如不及时清理,会造成进程的速度方面授予限制,下面讲几点关于释放优化的几条内容. 被删除对象在外部的所有引用一定要被删除干净才能被系统当成垃圾回收处理掉: 父对象内部的子对象被外部其 ...
-
AS3中的单件(Singleton)模式
单件(singleton)模式在c#中是最容易实现的模式,其主要用意就在于限制使用者用new来创建多个实例.但在as3中,构造函数必须是public的(语法本身要求的),而且也不能在构造函数中抛出异常 ...
-
AS3中的getChildByName
[转载的...............] 在AS3中,我们可以用getChildByName来获取一个元件,但是要注意返回的类型是DisplayObject,这样一旦我们的元件中有一些自定义的方法就不 ...
-
AS3中String转换成Boolean
AS3中, 对布尔值的转换, 规定所有的非空字符串都是true. 下面都不行: var f:Boolean = new Boolean(str); var f:Boolean = str as Boo ...
-
(转)AS3 中,Function.apply、call中第一个参数的作用;与什么时候用
http://blog.csdn.net/linjf520/article/details/8746064 大家在使用Function.apply或是call时,是否发现,第一个参数不知道怎么用,赋值 ...
-
AS3中以post和get方式提交数据
这里主要介绍在as3中用URLRequest对像来post或get数据到服务器. post用于大数据量的提交,get用于小数据量的提交. as3中提交数据: POST方式: 1.新建一个test.fl ...
-
AS3中ASCII码和字符互转函数
AS3中ASCII码和字符互转函数 字符转成ASCII码: 格式:字符串变量.charCodeAt(字符位置); var str:String = “A”; trace(str.charCodeAt( ...
-
AS3中 is,as,typeof的区别
AS3中 is,as,typeof的区别 . var my_num:Number=9;trace(typeof my_num);var my_object:Array=["语文", ...
随机推荐
-
SpriteSheet精灵动画引擎
SpriteSheet精灵动画引擎 本文介绍Flash中SpriteSheet精灵序列图与其它渲染方式的性能对比.SpriteSheet的原理及注意实现,最后实现了一个精灵序列图的渲染引擎.本文的 ...
-
如何将 Cortana 与 Windows Phone 8.1 应用集成 ( Voice command - Natural language recognition )
随着 Windows Phone 8.1 GDR1 + Cortana 中文版的发布,相信有很多用户或开发者都在调戏 Windows Phone 的语音私人助理 Cortana 吧,在世界杯的时候我亲 ...
-
WPF DragDrop事件元素跟随
前一段时间项目里面要实现一个鼠标拖动一个元素到另外一个元素上面并且赋值的功能,由于要在surface上运行,拖动的时候手指会挡住系统默认的拖动图标,导致用户意识不到自己是不是在拖动着东西,所以要解决这 ...
-
Altera USB Blaster 仿真器(EPM240仿制版
转载:http://tigerwang202.blogbus.com/logs/35981280.html 其他很好的资料:http://bbs.ednchina.com/BLOG_ARTICLE_1 ...
-
微信小程序视频地址
微信小程序视频系列教程完整版,课程中用到的源码附在帖子最后. [url=http://bbs.larkapp.com/forum.php?mod=viewthread&tid=5673][b] ...
-
Android开发之事件分发和Listener
参考:http://blog.csdn.net/zhongkejingwang/article/details/38141719 http://blog.csdn.net/zhongkejingwan ...
-
objective-c中的category
如果有如下一个类 #import <Foundation/Foundation.h> @interface Person : NSObject @property int age; @en ...
-
ADO.NET 2SqlDataAdapter、DataSet 的基本用法
数据集完全独立于数据源,可以与数据源链接或者完全断开,其基本作用是为存储在内存缓存中的的数据提供关系视图 如果只是想读取和显示数据,则值需要使用数据读取器,尤其是处理大量数据的时候 如果需要处理数据, ...
-
Android中利用Handler实现消息的分发机制(三)
在第二篇文章<Android中利用Handler实现消息的分发机制(一)>中,我们讲到主线程的Looper是Android系统在启动App的时候,已经帮我们创建好了,而假设在子线程中须要去 ...
-
按条件生成j随机json包:randomjson
前端开发中,在做前后端分离的时候,经常需要手写json数据,有2个问题特别揪心: 1,数据是写死的,不能按一定的条件随机生成长度不一,内容不一的数据 2,写数组的时候,如果有很多条,需要一条一条地写, ...