AS3的 LoaderInfo 类为我们加载外部资源提供了更多的可控信息,以前制作SWF播放器的两大难题终于可以得到解决:
◦获得加载SWF的舞台大小以缩放到适合尺寸显示
LoaderInfo 的 width 和 height 属性便是舞台大小。
◦使加载的SWF按自己的帧频播放
LoaderInfo 的 frameRate 属性为加载SWF的帧频,可以修改Stage的 frameRate 属性适应播放。
做了一个 简单的例子 ,分别加载300×150帧频5和100×150帧频20的两个swf到200×200大小的区域播放,注释写的很详细,就不啰嗦了。
监听加载事件:
var t_info : LoaderInfo = this.m_loader.contentLoaderInfo;
t_info.addEventListener(Event.COMPLETE, this.onLoadDone);
t_info.addEventListener(IOErrorEvent.IO_ERROR, this.onLoadError);
t_info.addEventListener(ProgressEvent.PROGRESS, this.onLoadProgress);显示加载进度:
private function onLoadProgress(p_e : ProgressEvent) : void
{
this.m_loading.progress(p_e.bytesLoaded, p_e.bytesTotal);
}显示加载的SWF:
// 隐藏loading
this.m_loading.hide();
// loaderInfo
var t_info : LoaderInfo = this.m_loader.contentLoaderInfo;
// 载入的MC
this.m_mc = t_info.content as MovieClip;
// 载入MC的舞台宽度
var t_stageW : Number = t_info.width;
// 载入MC的舞台高度
var t_stageH : Number = t_info.height;
// 载入MC的实际宽度
var t_mcW : Number = this.m_mc.width;
// 载入MC的实际高度
var t_mcH : Number = this.m_mc.height;
// 是否缩放MC适应显示宽度(载入MC舞台的宽高比是否大于显示区域宽高比)
var t_scaleWidth : Boolean = t_stageW / t_stageH > SHOW_W / SHOW_H;
// 缩放比率
var t_scaleRate : Number = t_scaleWidth ? SHOW_W / t_stageW : SHOW_H / t_stageH;
// 缩放MC
this.m_mc.scaleX = this.m_mc.scaleY = t_scaleRate;
// 显示载入MC的显示范围
this.m_mc.scrollRect = new Rectangle(0, 0, t_stageW, t_stageH);
// 显示载入MC
this.addChild(this.m_mc);
// 调整显示位置
this.m_mc.x = SHOW_X;
this.m_mc.y = SHOW_Y;
if (t_scaleWidth) this.m_mc.y += (SHOW_H - t_stageH * t_scaleRate) / 2;
else this.m_mc.x += (SHOW_W - t_stageW * t_scaleRate) / 2;
// 修改帧频
this.stage.frameRate = t_info.frameRate;
this.fms.text = String(this.stage.frameRate);
// 设置组件
this.sdr.enabled = this.btn1.enabled = this.btn2.enabled = true;
this.sdr.maximum = this.m_mc.totalFrames;
// 监听MC事件
this.addEventListener(Event.ENTER_FRAME, this.onEnterFrame);另外加了一个 Slider 组件来控制播放,前提是加载的swf必须发布为Player9,As3:
this.sdr.addEventListener(SliderEvent.CHANGE, this.onChangeSdr);
this.sdr.addEventListener(SliderEvent.THUMB_PRESS, this.onPressSdr);
this.sdr.addEventListener(SliderEvent.THUMB_RELEASE, this.onReleaseSdr);
private function onChangeSdr(p_e : SliderEvent) : void
{
if (this.m_isPressSdr) this.m_mc.gotoAndStop(p_e.value);
}
private function onPressSdr(p_e : SliderEvent) : void
{
this.m_isPressSdr = true;
this.m_mc.stop();
}
private function onReleaseSdr(p_e : SliderEvent) : void
{
this.m_isPressSdr = false;
this.m_mc.play();
}f
分享到:
相关推荐
Flashswf播放器是一款用于播放flash制作软件制作出来的SWF动画视频,可以清晰的显示出文件名称、大小和修改时间,同时还支持是EXE格式的文件播放与网络播放,还可以建立类别,分类保存SWF视频。 FlashSwf播放器功能...
FlashSwf播放器是一款用于播放flash制作软件制作出来的SWF动画视频,可以清晰的显示出文件名称、大小和修改时间,同时还支持是EXE格式的文件播放与网络播放,还可以建立类别,分类保存SWF视频。 FlashSwf播放器...
Flash4是MacroMedia公司出品的矢量动画创作专业软件,利用该软件制作的矢量动画具有文件体积小、带音效和兼容性好等特点。那么,你想不想在自己编写的程序中加入Flash动画,为自己的程序添加一道亮丽的色彩呢?
FlashAS教程:AS2.0制作加载外部.swf影片的视频播放器.pdf
这个免费软件可以让你一帧一帧地播放swf动画,还可以把swf文件制作成屏保。
FLASH播放器VB制作,就是用VB6+Flash.ocx制作的播放软件。
使用flash制作的MP3播放器,适合学习flash编程
学习FlashAS教程之AS20制作加载外部swf影片的视频播放器.pdf
由于flash升级,公司被adobe收购,adobe推出自己的一套东西,行业发展H5取代flash,导致曾经使用flash制作的游戏、学校采购的大量教学课件都不能顺利播放了。 我依然保留了一份可以使用的早期flash player版本,现...
swf+xml Flash制作的附带歌词的音乐播放器 解压密码为:cnwebshow.com
随着互联网富媒体时代的到来,越来越多的互联网公司、广告公司等迫切需要突破传统超文本格式的...6、提供全景制作的培训和方案指导:我们提供完善的解决方案和指导服务,从全景图片的拍摄和后期处理,网站的搭建等。
本资源是一个简易的Flash播放器。对于初学者而言,可以学习到部分关于怎么制作播放器的相关知识。
高锰酸钾制取氧气,用flash制作,文件为swf文件 压缩包中有flash播放器
* 高质量的flash播放器 全景漫游者拥有高质量的Flash播放器,同时支持球形全景,立方体全景图。 *支持多种格式的全景图:普通图片格式的jpg,透明通道的PNG,视频格式Flv,F4V, Gif动画格式的。Flash格式的swf全景...
其实不是,Flash Player Pro是一款多功能的FLASH文件播放器,除了能够播放FLASH动画文件外,还能从指定的网址URL上下载FLASH影片,内置SWF/EXE格式转换工具,支持将FLASH影片制作为屏幕保护程序,可生成SCR格式的...
视频网站中提供的在线视频播放功能,播放的都是FLV格式的文件,它是Flash动画文件,可通过Flash制作的播放器来播放该文件.项目中用制作的player.swf播放器. 多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能...
FLASH可以算不 而且是SWF文件的 不知道行不
SWiSH会输出跟Macromedia Flash相同的SWF格式,所以超过97% 的飙网者都可以看到你的动画而不需要再下载一个外挂程序。你可以在未发表在网路或其他播放器之前,先以SWiSH预览你的动画,并直接编辑,让你可以在动画...
利用任意一种软件,把所有的歌词编辑好,并按歌词顺序作好标记,歌词制作好以后以swf格式保存在电脑硬盘中,需要的时候直接导入到Flash中。 歌词的导入:打开歌词层小锁,点菜单栏上【插入】-【新建元件】命令,...
毫无疑问HTML5已经是大势所趋,知名视频网站YouTube在两年前就开始推广HTML5播放器来代替Flash。虽然国内还没有完全普及HTML5浏览器,但在各大本土浏览器厂商的努力下,支持HTML5的浏览器在中国浏览器市场的占有率也...