2009-07-27 33 views
0

我有一个Flash电影,我想在flex应用程序中使用,非常类似于preloader。在flex应用程序中运行flash电影

看着本教程,http://www.flexer.info/2008/02/07/very-first-flex-preloader-customization/,我预计这将是一个不扩展“Preloader”并扩展“Sprite”并使用我创建的类创建的任何地方。

唉,我创建的电影没有被显示。

这是我的课包含电影的代码,由基于上面的教程:

package 
{ 
    import mx.preloaders.DownloadProgressBar; 
    import flash.display.Sprite; 
    import flash.events.ProgressEvent; 
    import flash.events.Event; 
    import mx.events.FlexEvent; 
    import flash.display.MovieClip; 


    public class PlayerAnimation extends Sprite 
    { 
     [Embed("Player.swf")] 
     public var PlayerGraphic:Class; 

     public var mc:MovieClip; 

     public function PlayerAnimation():void 
     { 
      super(); 
      mc = new PlayerGraphic(); 
      addChild(mc); 
     } 

     public function Play():void 
     { 
      mc.gotoAndStop(2); 
     } 
    } 
} 

回答

0

你需要考虑到Flex的基本陈列原始的是UIComponent,而相对于闪存是主要使用精灵。您只能将一个UIComponent添加到Flex组件(而不是直接使用Sprite,因为您似乎试图这么做)。

你应该:

VAR IUI:UIComponent =新UIComponent(); //首先创建UIComponent容器 var player:PlayerAnimation = new PlayerAnimation(); //然后创建基于Sprite的类 player.width = this.width; player.height = this.height; //设置高度,宽度 iui.addChild(player); //将基于Sprite的类添加到UIComponent this.addChild(iui); //终于,您可以将UIComponent添加到您的Flex容器(应用程序,TitleWindow,VBox,Panel ...无论它是什么)

相关问题