[原]flex中调用swf-swc文件的帧里内容_神圣信仰

系统 1743 0
[原]flex中调用swf/swc文件的帧里内容
2009-03-19 17:01

以下在Flex中实现调用swf文件或者swc文件中的帧中的内容:

本项目在Flex Builder3.0 和Flash CS3环境下完成。

在Flex Builder中实现调用swf帧里的内容:

首先,在Flash CS3创建一个ActionScript3.0 的Flash File,然后将两张图片导入库,创建一个影片剪辑,将这两张图片放入这个影片剪辑里,如图一所示:

[原]flex中调用swf-swc文件的帧里内容_神圣信仰_百度空间 (图一)

然后在这个影片剪辑里的第一帧放入图片pic1_1,在第二帧里放入图片pic2_2,如图二图三所示:

  

[原]flex中调用swf-swc文件的帧里内容_神圣信仰_百度空间 (图二)

 

[原]flex中调用swf-swc文件的帧里内容_神圣信仰_百度空间 (图三)

 

然后在这个影片剪辑右键,选Linkage,再在里面选择Export for Actionscript,并输入类名(而这个类名,就是要在程序中引用的,在这里我输入mypic1),如图四、图五所示:

[原]flex中调用swf-swc文件的帧里内容_神圣信仰_百度空间 (图四)

[原]flex中调用swf-swc文件的帧里内容_神圣信仰_百度空间 (图五)

最后将这个flash publish出来,生成一个swf文件。然后打开Flex builder,将swf文件放在libs目录下。

swfpro.mxml:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx=" http://www.adobe.com/2006/mxml " layout="absolute"
creationComplete="init()">
<mx:Script>
   <![CDATA[

    public var varpic:mypicClass;
    public var ppic:mypic1=new mypic1();

    public function init():void{
     //这个是加载swf里的第一帧的东西,在flex中调用swf里的帧的内容,我只知道这个方法,有更好的方法请回复我。呵。
     varpic=new mypicClass();
     varpic.mouseEnabled=true;
     this.addChild(varpic);//这里是添加到UIComponent中,所以不能使用gotoandplay来调用第二帧的内容
     varpic.x=0;
     varpic.y=0;
    }
   ]]>
</mx:Script>
</mx:Application>

 

mypicClass.as:

package
{
import mx.core.UIComponent;
import flash.display.MovieClip;
[Embed(source='../libs/mypic.swf',symbol="mypic1")]
public class mypicClass extends UIComponent
{  
   public function mypicClass()
   {//此处为空

   }
  
}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 

 

 

 

 

 

在Flex 中调用swc文件里帧的内容:

注:使用的flash与上面的一样,只是在影片剪辑里点击右键,选择“Export swc file”,如下图所示:

 

swfpro1.mxml:

<mx:Script>
   <![CDATA[
    import flash.display.*;
    import mx.core.UIComponent;
    import flash.display.MovieClip;
    public var varpic:mypicClass;
    public var ppic:mypic1=new mypic1();
    private var uc:UIComponent = new UIComponent();
   
    public var ii:int=1;
    public function init():void{
     this.addChild(uc);
     uc.addChild(ppic);
     ppic.x=0;
     ppic.y=0;
     ppic.gotoAndStop(1);
     ppic.addEventListener(MouseEvent.CLICK,mouseHandler);
    }
    private function mouseHandler(evt:MouseEvent):void{
     if(1==ii){
      ppic.gotoAndStop(2);//这里实现了获取swc文件里帧的内容
      ii=0;     
     }else{
      ppic.gotoAndStop(1);
      ii=1;
     }
    }
   ]]>
</mx:Script>

 

 

来源: http://hi.baidu.com/suterfo/blog/item/33a7d645410efa3786947357.html

[原]flex中调用swf-swc文件的帧里内容_神圣信仰_百度空间


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论