宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > AS2与AS3技术

[AS3]主SWF文件和子SWF文件之间互动的详细介绍

2016-10-13 00:16:48 点击量:4 标签: 收藏本文

 [AS3]主SWF文件和子SWF文件之间互动的详细介绍

  1. package {  
  2. import flash.display.Sprite;  
  3. import flash.display.Shape;  
  4. public class swf extends Sprite {   
  5. var color:uint=0x000000;  
  6. var shape:Shape;  
  7. public function swf() {  
  8. init();  
  9. }  
  10. private function init():void {//默认先画一个黑色的圆  
  11. shape=new Shape;  
  12. addChild(shape);  
  13. shape.graphics.clear();  
  14. shape.graphics.beginFill(color);  
  15. shape.graphics.drawCircle(200,200,100);  
  16. shape.graphics.endFill();  
  17. }  
  18. public function setcolor(col:uint):void {//定义1个方法供主文件交互!  
  19. colcolor=col;  
  20. init();  
  21. }  
  22. public function getcolor():uint {//返回颜色值的类型 uint  
  23. return color;  
  24. }  
  25. }  
  26. }  

读取上面的swf.swf并交互

  1. package {  
  2. import flash.display.Sprite;  
  3. import flash.display.Loader;  
  4. import flash.net.URLRequest;  
  5. import flash.events.Event;  
  6. import flash.events.ProgressEvent;  
  7. import flash.display.Shape;  
  8. public class loadswf extends Sprite {  
  9. var swfoader;  
  10. public function loadswf() {  
  11. init();  
  12. }  
  13. private function init():void {  
  14. swf=new Loader();//定义Loader类  
  15. swf.load(new URLRequest("swf.swf"));//读取外部SWF文件  
  16. addChild(swf);//这红色三行即传说中的 “读取swf三步走” 定-读-显  
  17. swf.contentLoaderInfo.addEventListener(Event.INIT,init2); 

    //这里非常关键 SWF文件读取进来后 想互动 就必须侦听INIT

    //(初始化/读取完毕的意思)事件,不激活该事件无法后续互动哦!!  
  18. }  
  19. private function init2(event:Event):void {  
  20. var mc1:*=swf.content;//这里同样关键,读取进来的swf必须通过content属性引用  
  21. mc1.getcolor();//互动1   
  22. mc1.setcolor(0xff0000);//互动2  
  23. }//上面说的2个关键即传说中的 “控制swf两步走”侦-引(真阴)  
  24. }  
  25. }  

 

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室