package
{
import evt.GameEvent;
import flash.display.MovieClip;
import flash.display.SimpleButton;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.ProgressEvent;
import flash.geom.Point;
import flash.text.TextField;
import mx.effects.SoundEffect;
import mx.events.FlexEvent;
import mx.preloaders.DownloadProgressBar;
/**
* This class extends the lightweight DownloadProgressBar class. This class
* uses an embedded Flash 8 MovieClip symbol to show preloading. *
* @author jessewarden * */
public class Preloader extends DownloadProgressBar
{
/**
* The Flash 8 MovieClip embedded as a Class. */
[Embed(source="/assets/flash/lisenwell.swf", symbol="loader")]
private var FlashPreloaderSymbol:Class;
[Embed(source="/assets/flash/lisenwell.swf", symbol="startbtn")]
private var FlashBtnSymbol:Class;
[Embed(source="/assets/flash/lisenwell.swf", symbol="mouseOver.mp3")]
[Bindable] public var mouseOverSound:Class;
private var clip:MovieClip;
private var _preloader:Sprite;
public var msg:TextField;
public var btn:SimpleButton;
public var point1:Point;
private var btnSoundEffect:SoundEffect;
public function Preloader()
{
super();
btnSoundEffect=new SoundEffect();
btnSoundEffect.source=mouseOverSound;
// instantiate the Flash MovieClip, show it, and stop it.
// Remember, AS2 is removed when you embed SWF's,
// even "stop();", so you have to call it manually if you embed.
this.clip=new FlashPreloaderSymbol();
// point1=new Point();
// clip.scaleX=1.5;
// clip.scaleY=1.5;
// point1.x=this.x-300;
// point1.y=this.y-300;
// point1=this.localToGlobal(point1);
// clip.x=point1.x;
// clip.y=point1.y;
clip.x=this.x
// clip.y=point1.y;
this.addChild(clip);
this.clip.gotoAndStop("start");
// msg=new TextField();
// msg.text="完成了!!!!";
// msg.x=200;
// msg.y=200;
// addChild(msg);
}
private function centerPreloader():void
{
x = (stageWidth / 2) - (clip.width / 2);
y = (stageHeight / 2) - (clip.height / 2);
trace(x+" y"+y+"myPreloader.width"+clip.width)
}
public override function set preloader(preloader:Sprite):void
{
preloader.addEventListener(ProgressEvent.PROGRESS, onSWFDownloadProgress);
preloader.addEventListener(Event.COMPLETE, onSWFDownloadComplete);
preloader.addEventListener(FlexEvent.INIT_PROGRESS, onFlexInitProgress);
preloader.addEventListener(FlexEvent.INIT_COMPLETE, onFlexInitComplete);
stage.addEventListener(Event.RESIZE, centerPreloader);
_preloader=preloader;
centerPreloader();
}
/**
* Makes sure that the preloader is centered in the center of the app.
* */
// private function centerPreloader(event:Event=null):void
// {
// var adjust_X:Number=300; // X coodinate adjustion according to Object layout.
// var adjust_Y:Number=500; // Y coodinate adjustion according to Object layout.
// x=((stage.stageWidth + adjust_X) / 2) - (clip.width / 2);
// y=((stage.stageHeight + adjust_Y) / 2) - (clip.height / 2);
// }
/**
* As the SWF (frame 2 usually) downloads, this event gets called.
* You can use the values from this event to update your preloader.
* @param event * */
private function onSWFDownloadProgress(event:ProgressEvent):void
{
var t:Number=event.bytesTotal;
var l:Number=event.bytesLoaded;
var p:Number=Math.round((l / t) * 100);
clip.loadA.gotoAndStop(p);
//clip.preloader.amount_txt.text=String(p);
//clip.preloader.amount_txt_img.text=String(p);
}
/** * When the download of frame 2
* is complete, this event is called.
* This is called before the initializing is done.
* @param event * */
private function onSWFDownloadComplete(event:Event):void
{
clip.loadA.gotoAndStop(100);
//clip.preloader.amount_txt.text="100";
//clip.preloader.amount_txt_img.text="100";
}
/**
* When Flex starts initilizating your application.
* @param event * */
private function onFlexInitProgress(event:FlexEvent):void
{
clip.loadA.gotoAndStop(100);
//clip.preloader.amount_txt.text="Init...";
}
/**
* When Flex is done initializing, and ready to run your app,
* this function is called. *
* You're supposed to dispatch a complete event when you are done.
* I chose not to do this immediately, and instead fade out the
* preloader in the MovieClip. As soon as that is done,
* I then dispatch the event. This gives time for the preloader
* to finish it's animation. * @param event *
*/
private function onFlexInitComplete(event:FlexEvent):void
{
_preloader.removeEventListener(ProgressEvent.PROGRESS, onSWFDownloadProgress);
_preloader.removeEventListener(Event.COMPLETE, onSWFDownloadComplete);
_preloader.removeEventListener(FlexEvent.INIT_PROGRESS, onFlexInitProgress);
_preloader.removeEventListener(FlexEvent.INIT_COMPLETE, onFlexInitComplete);
stage.removeEventListener(Event.RESIZE, centerPreloader);
// clip.addFrameScript(121, onDoneAnimating);
clip.gotoAndStop("fade out");
btn=new FlashBtnSymbol();
btn.x=280; btn.y=180;
clip.addChild(btn);
btn.addEventListener(MouseEvent.CLICK,onDoneAnimating);
btn.addEventListener(MouseEvent.MOUSE_OVER,onOver);
//clip.loadA.stop();
trace("fade out ");
clip.stop();
}
/**
* If the Flash MovieClip is done playing it's animation,
* I stop it and dispatch my event letting Flex know I'm done.
* @param event * */
private function onDoneAnimating(evt:MouseEvent):void
{
this.removeChild(clip);
dispatchEvent(new Event(Event.COMPLETE));
}
private function onOver(evt:MouseEvent):void{
btnSoundEffect.play([btnSoundEffect]);
}
}
}
分享到:
相关推荐
联发科刷机win10驱动, MTK = "...MediaTek PreLoader USB VCOM Port" MTK_SP_DA = "MediaTek DA USB VCOM Port" Serial.SvcDesc = "USB Serial emulation modem driver"
MediaTek PreLoader USB VCOM 驱动
MediaTek PreLoader USB VCOM
MTK6577+Android编译之preloader
mt65xx preloader是一个mt65xx刷机的USB驱动程序,包含usb2ser.sys、usb2ser_xp.cat、usb2ser_xp.inf、WdfCoInstaller01009.dll驱动文件,需要刷机的朋友应该会用的到的,mt65xx preloader驱动怎么安装1、你先让手机...
WIN7、Windows7系统,提示安装设备驱动程序,接着显示:MT65xx Preloader 安装失败,未能成功安装设备驱动程序,请向设备制造商咨询以获取安装此设备的帮助。 方法:在出现上述错误提示后。解压Win7_usb_for_MTK_...
解决MTK65XX Preloader报错问题,不用你积分
MT6577+Android烧录了preloader之后无法启动和重新烧录系统问题与解决
MTK通用驱动:解决MT65xx Preloader 驱动问题
mt65xx preloader 驱动
MediaTek PreLoader USB VCOM Port驱动, 包含x64和x86两种版本, 需要禁用驱动签名校验
美丽的Flex Preloader控件,页面预加载效果 美丽的Flex Preloader控件,页面预加载效果 美丽的Flex Preloader控件,页面预加载效果 美丽的Flex Preloader控件,页面预加载效果
MT65XX-preloader驱动 for win7-64位 Preload usb vcom(android) 开机按F8,取消驱动签名验证. 亲测可用
刷机关机时插上手机 提示:MT65xx Preloader,在设备管理器中更新驱动
MT65xx Preloader驱动.zip
MTK usb vcom驱动安装程序带签名win10可安装
包含1、通用adb驱动,开启usb调试后安装,usb调试和shell命令使用。2、MTK的MTP(Android Phone),手机正常开机安装,文件传送使用。3、MTK线刷(preloader)驱动,手机关机或者进入线刷模式安装,线刷rom使用。
preloader是一款小巧的jQuery页面预加载loading指示器插件。通过该插件可以在页面加载的时候显示预定义的loading指示器动画,并在页面加载结束之后将它关闭。
包含: MT65xx Android Phone 驱动 MT65xx Preloader 驱动