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的更多相关文章

  1. as3中的多线程

    从fp11.4开始支持worker技术, 即as3中的线程概念, 到了fp11.5, flascc中开始支持pthread家族来创建线程. 总的来说, as3中有两种创建线程的方法: 1.直接在as3 ...

  2. AS3中释放优化的几条常识

    as3中垃圾和堆弃物如不及时清理,会造成进程的速度方面授予限制,下面讲几点关于释放优化的几条内容. 被删除对象在外部的所有引用一定要被删除干净才能被系统当成垃圾回收处理掉: 父对象内部的子对象被外部其 ...

  3. AS3中的单件(Singleton)模式

    单件(singleton)模式在c#中是最容易实现的模式,其主要用意就在于限制使用者用new来创建多个实例.但在as3中,构造函数必须是public的(语法本身要求的),而且也不能在构造函数中抛出异常 ...

  4. AS3中的getChildByName

    [转载的...............] 在AS3中,我们可以用getChildByName来获取一个元件,但是要注意返回的类型是DisplayObject,这样一旦我们的元件中有一些自定义的方法就不 ...

  5. AS3中String转换成Boolean

    AS3中, 对布尔值的转换, 规定所有的非空字符串都是true. 下面都不行: var f:Boolean = new Boolean(str); var f:Boolean = str as Boo ...

  6. (转)AS3 中,Function.apply、call中第一个参数的作用;与什么时候用

    http://blog.csdn.net/linjf520/article/details/8746064 大家在使用Function.apply或是call时,是否发现,第一个参数不知道怎么用,赋值 ...

  7. AS3中以post和get方式提交数据

    这里主要介绍在as3中用URLRequest对像来post或get数据到服务器. post用于大数据量的提交,get用于小数据量的提交. as3中提交数据: POST方式: 1.新建一个test.fl ...

  8. AS3中ASCII码和字符互转函数

    AS3中ASCII码和字符互转函数 字符转成ASCII码: 格式:字符串变量.charCodeAt(字符位置); var str:String = “A”; trace(str.charCodeAt( ...

  9. AS3中 is,as,typeof的区别

    AS3中 is,as,typeof的区别 . var my_num:Number=9;trace(typeof my_num);var my_object:Array=["语文", ...

随机推荐

  1. 安装单机CHD5.12报错解决(补充)

    一.oozie启动失败 (1) 拷贝mysql的驱动文件. 一个是需要把java的mysql的驱动jar文件拷贝到oozie的lib目录中 /opt/cloudera/parcels/CDH-5.12 ...

  2. Python if语句

    a=99 b=input("请输入一个数字:") int(b) if a >b: print("欢迎来到Python") eilf a=b: print( ...

  3. 磁盘操作系统 cmd命令

    DOS CMD :磁盘操作系统 不区分大小写 **cd \ 根目录 cls 清空屏幕 dir 显示目录 d: 进入D盘 cd 进入目录命令 dir 查看当前目录的文件与目录 del 删除文件 del ...

  4. ubuntu 初始安装完成后的一些设置

    处于安全考虑最好,使用普通用户登录. 首先以超级用户登入系统,然后执行以下步骤 第一步:设置普通用户 以下<user_name>代表普通用户的用户名 useradd -g users -d ...

  5. Yii2项目高级模版 三个模块在同一个目录下的重定向配置

    最近做项目用到的,非常好用. 修改 advanced/backend/config/main.PHP 文件如下: return [ 'homeUrl' => '/admin', 'compone ...

  6. 学习笔记(二)--Lucene简介

    Lucene简介 最受欢迎的java开源全文搜索引擎开发工具包.提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言).Lucene的目的是为软件开发人员提供一个简单易用的工具包, ...

  7. $\mathcal{OI}$生涯中的各种数论算法的证明

    嗯,写这个是因为我太弱了\(ORZ\). #\(\mathcal{\color{silver}{1 \ \ Linear \ \ Sieve \ \ Method \ \ of \ \ Prime}} ...

  8. git 错误汇总

    ★一.git提交时报错:Updates were rejected because the tip of your current branch is behind 出现这样的问题是由于:自己当前版本 ...

  9. 第三章泛型集合ArrayList 和Hashtable

    第三章泛型集集合 ArrayList 变量名 = new ArrayList();  //相当与一个容器 他的执行using 是  using System.Collections; 变量名.ADD( ...

  10. 源码编译、安装net-snmp的方法和遇到的问题

    本文参考地址:http://blog.163.com/qiushuhui1989@126/blog/static/270110892014119113421364/ 1. 源码下载 # wget ht ...