在flex应用程序中运行Flash影片

时间:2009-07-27 21:13:52

标签: flex flash movieclip

我想在flash应用程序中使用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);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

你需要考虑到flex的基本显示原语是UIComponent,而不是主要使用Sprites的Flash。您只能将一个UIComponent添加到Flex组件(而不是直接添加到Sprite,就像您似乎要尝试的那样)。

你应该:

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