建立扩展至 mx.preloaders.DownloadProgressBar 的一个类:
package myDownPro { import mx.preloaders.DownloadProgressBar; public class myDownProBar extends DownloadProgressBar { public function myDownProBar() { //TODO: implement function super(); downloadingLabel=" 正在下载中..."; initializingLabel=" 正在初始化内容..."; } } }
然后在修改 preloader 为你建立的这个类:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" preloader="myDownPro.myDownProBar" layout="absolute"> <mx:Text text="程序进度条测试" x="37" y="71"/> </mx:Application>
方法二:覆写 DownloadProgressBar 类的 preloader,可以在其中加入你自已喜欢的标签或者图像
package myDownPro { import mx.preloaders.DownloadProgressBar; import flash.display.Sprite; import flash.events.ProgressEvent import flash.events.* import flash.text.TextField; import mx.events.*; public class myDownProBar2 extends DownloadProgressBar { public var msg:TextField public function myDownProBar2() { super(); msg=new TextField() msg.x=200 msg.y=200 addChild(msg) } override public function set preloader(s:Sprite):void{ s.addEventListener(ProgressEvent.PROGRESS,prog) s.addEventListener(Event.COMPLETE,ecom) s.addEventListener(FlexEvent.INIT_COMPLETE,flInC) s.addEventListener(FlexEvent.INIT_PROGRESS,flIn) } private function prog(e:ProgressEvent):void{ msg.text=String(int(e.bytesLoaded/e.bytesTotal*100))+" %"; } private function ecom(e:Event):void{ msg.text="完成了!!!!" } private function flInC(e:FlexEvent):void{ msg.text="初始化完毕!"// 初始完后要派遣 Complete 事件,不然会停在这里,不会进入程序画面的 dispatchEvent(new Event(Event.COMPLETE)) } private function flIn(e:FlexEvent):void{ msg.text="开始初始化程序" } } }