我想在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);
}
}
}
答案 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 ......无论它是什么)