• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>FLASH AS 编程>AS基础篇>AS 3.0>文章内容
  • 《AS3.0 实现FLASH的动态链接库》的转发
  • 来源:25swf 作者:25swf 2008-05-12 【

因为以前是做.net 的开发的,所以很习惯与 DLL 文件,觉得它异常方便,特别开发大型项目时,分成不同的DLL文件进行开发,不但节省了编译的时间,也使得程序结构更加完美.

AS3中,写一类,代码如下:
package cw.DizhuAS3
{
 public class DizhuRules
 {
  public function DizhuRules()
  {
   trace("DizhuRules Create")
  }
 }
}
新建一FLA[DizhuAS3.fla],写一帧写以下代码
import cw.DizhuAS3.*;
DizhuRules;//这里还是和AS2一样,如果没在FLASH里出现过,编译的时候不会被编译进SWF中
编译后得到包含有 DizhuRules 类的 DizhuAS3.swf 文件.我把他扔进一个叫LIB的文件夹里.
再新建一FLA,尝试在第一帧写以下代码
import flash.net.*;
import flash.events.*;

var myloader:Loader = new Loader();
myloader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLibLoaded);
myloader.load(new URLRequest("LIB/" + "DizhuAS3" + ".swf"));
function onLibLoaded(e:Event):void {
 trace("load compele");
 var ClassReference:Class = myloader.contentLoaderInfo.applicationDomain.getDefinition("cw.DizhuAS3::DizhuRules") as Class; //("cw.DizhuAS3::DizhuRules")  与 ("cw.DizhuAS3.DizhuRules") 效果一样
 new ClassReference();
}

编译运行,可以看得到 DizhuRules Create 被 trace了出来..
AS3引入了 applicationDomain ,使得被载入进来的swf 里的类与主swf的里都存在与不同的环境中,从而不会出现像AS2中的旧的被新的同名的类替换的后果[因为AS2里的类都是加在_global上]

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://25swf.blogbus.com/logs/8299603.html




上一篇:拥有重力的弹性小球(as3.0)   下一篇:[AS3]使用RSL进行AS瘦身编程
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)


FLASH源文件

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)