Flex中修改Loading页面
来源:互联网 发布:2017淘宝实时交易数据 编辑:程序博客网 时间:2024/05/29 14:33
package timelineas
{
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.text.TextField;
import flash.text.TextFormat;
import mx.events.FlexEvent;
import mx.preloaders.DownloadProgressBar;
public class FlexDownloadProgressBar extends DownloadProgressBar
{
private var logo:Loader;
private var txt:TextField;
private var _preloader:Sprite;
public function FlexDownloadProgressBar()
{
logo = new Loader();
logo.load(new URLRequest("image/winner.png"));//loding时候的图片
addChild(logo);
var style:TextFormat = new TextFormat(null,null,0x000000,null,null,null,null,null,"center");
txt = new TextField();
txt.defaultTextFormat = style;
txt.width = 200;
txt.selectable = false;
txt.height = 20;
addChild(txt);
super();
}
override public function set preloader(value:Sprite):void{
_preloader = value
_preloader.addEventListener(ProgressEvent.PROGRESS,load_progress);
_preloader.addEventListener(Event.COMPLETE,load_complete);
_preloader.addEventListener(FlexEvent.INIT_PROGRESS,init_progress);
_preloader.addEventListener(FlexEvent.INIT_COMPLETE,init_complete);
stage.addEventListener(Event.RESIZE,resize)
resize(null);
}
private function remove():void{
_preloader.removeEventListener(ProgressEvent.PROGRESS,load_progress);
_preloader.removeEventListener(Event.COMPLETE,load_complete);
_preloader.removeEventListener(FlexEvent.INIT_PROGRESS,init_progress);
_preloader.removeEventListener(FlexEvent.INIT_COMPLETE,init_complete);
stage.removeEventListener(Event.RESIZE,resize)
}
private function resize(e:Event):void{
logo.x = (stage.stageWidth - 40)/2;
logo.y = (stage.stageHeight - 80)/2;
txt.x = (stage.stageWidth - 150)/2;
txt.y = logo.y + 40+50;
graphics.clear();
graphics.beginFill(0xEEFAFF);
graphics.drawRect(0,0,stage.stageWidth,stage.stageHeight);
graphics.endFill();
}
private function load_progress(e:ProgressEvent):void{
txt.text = "正在加载..."+int(e.bytesLoaded/e.bytesTotal*100)+"%";
}
private function load_complete(e:Event):void{
txt.text = "加载完毕!"
}
private function init_progress(e:FlexEvent):void{
txt.text = "正在初始化..."
}
private function init_complete(e:FlexEvent):void{
txt.text = "初始化完毕!"
remove()
dispatchEvent(new Event(Event.COMPLETE))
}
}
}
在Aplliction的preloader中加载 preloader="timelineas.FlexDownloadProgressBar"
{
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.text.TextField;
import flash.text.TextFormat;
import mx.events.FlexEvent;
import mx.preloaders.DownloadProgressBar;
public class FlexDownloadProgressBar extends DownloadProgressBar
{
private var logo:Loader;
private var txt:TextField;
private var _preloader:Sprite;
public function FlexDownloadProgressBar()
{
logo = new Loader();
logo.load(new URLRequest("image/winner.png"));//loding时候的图片
addChild(logo);
var style:TextFormat = new TextFormat(null,null,0x000000,null,null,null,null,null,"center");
txt = new TextField();
txt.defaultTextFormat = style;
txt.width = 200;
txt.selectable = false;
txt.height = 20;
addChild(txt);
super();
}
override public function set preloader(value:Sprite):void{
_preloader = value
_preloader.addEventListener(ProgressEvent.PROGRESS,load_progress);
_preloader.addEventListener(Event.COMPLETE,load_complete);
_preloader.addEventListener(FlexEvent.INIT_PROGRESS,init_progress);
_preloader.addEventListener(FlexEvent.INIT_COMPLETE,init_complete);
stage.addEventListener(Event.RESIZE,resize)
resize(null);
}
private function remove():void{
_preloader.removeEventListener(ProgressEvent.PROGRESS,load_progress);
_preloader.removeEventListener(Event.COMPLETE,load_complete);
_preloader.removeEventListener(FlexEvent.INIT_PROGRESS,init_progress);
_preloader.removeEventListener(FlexEvent.INIT_COMPLETE,init_complete);
stage.removeEventListener(Event.RESIZE,resize)
}
private function resize(e:Event):void{
logo.x = (stage.stageWidth - 40)/2;
logo.y = (stage.stageHeight - 80)/2;
txt.x = (stage.stageWidth - 150)/2;
txt.y = logo.y + 40+50;
graphics.clear();
graphics.beginFill(0xEEFAFF);
graphics.drawRect(0,0,stage.stageWidth,stage.stageHeight);
graphics.endFill();
}
private function load_progress(e:ProgressEvent):void{
txt.text = "正在加载..."+int(e.bytesLoaded/e.bytesTotal*100)+"%";
}
private function load_complete(e:Event):void{
txt.text = "加载完毕!"
}
private function init_progress(e:FlexEvent):void{
txt.text = "正在初始化..."
}
private function init_complete(e:FlexEvent):void{
txt.text = "初始化完毕!"
remove()
dispatchEvent(new Event(Event.COMPLETE))
}
}
}
在Aplliction的preloader中加载 preloader="timelineas.FlexDownloadProgressBar"
- Flex中修改Loading页面
- 修改页面loading。。。样式
- 修改FLEX程序加载的LOADING样式.
- Flex中实现Flex页面跳转
- 页面loading
- Loading页面
- Flex中在DataGrid加载数据时显示Loading...
- Flex中模块化页面跳转
- Flex中显示web页面
- Flex中显示web页面
- Flex中嵌入HTML页面
- Flex自定义Loading界面
- Loading page,loading是遮罩页面
- 在页面提交时,显示提交中loading
- 在页面提交时,显示提交中loading
- 在页面提交时,显示提交中loading
- Unity中Loading页面存在的究极原因
- 在Flex中嵌入完整HTML页面
- IoC(控制反转)与依赖注入是什么个概念
- 深入讲解SQL Union和Union All的使用方法
- linux解压缩命令
- 求多边形重心
- lighttpd+PHP上传文件
- Flex中修改Loading页面
- Android学习笔记--资源访问
- Silverlight.XNA(C#)跨平台3D游戏研发手记:(一)差集运算在SLG战斗范围设定中的应用
- Windows查看端口使用情况
- 移动互联网风起云涌
- zoj 2376 Ants (水题,刚开始不会)
- qos各种队列以及qos的详解(Cisco)
- 转java异常相关的文章
- fedora sendmail邮件服务器