相关文章
北京网站设计理解Web框架,和如何构建一个CSS框架
网页设计CSS制作的垂直导航菜单效果
北京网站设计在CSS中合理运用整体布局声明
北京网站制作HTML语言剖析(二)HTML标记一览
网站制作增强网站的可访问性
北京网页设计Dreamweaver网页中实用制作技巧
北京网站建设如何制作会移动的广告条
网页设计Flash MX 2004 中的Behaviors(2)
网站设计FLASH MX 2004视频教程:五彩苹果(二)
网站建设CSS滤镜之blur属性
品牌理念
北京网站建设最佳合作伙伴
北京网站建设专家企通互联
竭诚为您提供网站建设服务!
友好连接
文章搜索
你的位置:首页 >> 网站制作 >> 网站制作北京网站制作Flash MX 2004 Media组件实现多首mp3连放
网站制作北京网站制作Flash MX 2004 Media组件实现多首mp3连放
Flash MX 2004 的Media组件确实不错,大家在使用的时候可能发现MediaDisplay组件只能播放一首mp3,如果要让他播放完一首歌曲后再接着播放另一首歌曲就不行了。今天就来给大家介绍一下怎样用MediaController和MediaDisplay组件实现多首mp3的联播。
播放器界面如图:

北京网站设计
思路如下:
网页设计 歌曲列表用一外部XML文件来记录,便于修改。开始的时候定义一XML对象,并载入外部XML文件,载入后再将歌曲列表提取出来放入一数组中。接着用attachMovie()方法将MediaController和MediaDisplay 北京网站设计组件载入舞台,然后设置各自的参数,并将二者相关联(Media.associateController()或者Media.associateDisplay()方法都行)当一首歌曲播放完后,触发MediaDisplay的complete事件,在此事件中我将MediaController和MediaDisplay组件卸载并重新载入MediaController和MediaDisplay组件(使用attachMovie()方法)并给一新的实例名,并设置MediaDisplay组件的播放内容为下一首歌曲,如此往复来播放所有的歌曲。
制作步骤:
1.新建一个FLASH文档,设置舞台大小:220*70。
2.将组件MediaController和MediaDisplay拖入舞台,然后从舞台上删除。这样做的目的是将这两个组件载入库中,为接下来用attachMovie()方法将MediaController和MediaDisplay组件载入舞台做好准备。
3.新建一层,命名为function。在该层的第一帧上输入如下AS代码:
function init(){网页设计
flagNum = 1;北京网站建设
//播放歌曲的标示北京网站制作
mp3Num = 0;企通互联
attachController();企通互联
};网站设计
//将MediaController和MediaDisplay组件载入舞台并初始化企通互联
function attachController(){网站制作
//将MediaDisplay组件载入舞台并给定义实例名 网站制作 "mp3Container" + flagNum企通互联
_root.attachMovie("MediaDisplay","mp3Container" + flagNum,2);北京网页设计
//设置组件初始参数网站建设
with(_root["mp3Container" + flagNum]){北京网页设计
_x = 250;网站建设
_y = 0;北京网页设计
setMedia(myArray[mp3Num],"MP3");北京网站设计
}北京网站制作
//将MediaController组件载入舞台并给定义实例名 "mp3Controller" + flagNum北京网站制作
_root.attachMovie("MediaController","mp3Controller" + flagNum,1);北京网站制作
//设置组件初始参数北京网页设计
with(_root["mp3Controller" + flagNum]){网站制作
_x = 0;网页设计
_y = 0;企通互联
activePlayControl = false;北京网站设计
controllerPolicy = "on"; 企通互联北京网站制作
// 北京网页设计将MediaController和MediaDisplay组件相关联网站设计
associateDisplay(_root["mp3Container" + flagNum]);企通互联
};北京网页设计
};网页设计
function playNext(){企通互联
// 北京网站制作将MediaController和MediaDisplay组件从舞台上删除北京网站制作
_root["mp3Controller" + flagNum].removeMovieClip();北京网站制作
_root["mp3Container" + flagNum].removeMovieClip();网站设计
flagNum += 1;网站建设
mp3Num += 1;北京网站制作
//如果播放到歌曲的最后一首,将mp3Num = 0,意为将从头开始播放北京网站制作
if(mp3Num == mp3Total) mp3Num = 0;北京网站建设
//重新载入MediaController和MediaDisplay组件,并给一新的实例名网站建设
attachController();北京网站建设
//因为每播放完一首歌曲后MediaController 网站建设和MediaDisplay组件从舞台上被卸载北京网页设计
//然后又重新载入MediaController和MediaDisplay组件并给了另外一个实例名企通互联
//所以要重新向注册的监听器广播事情企通互联
_root["mp3Container" + flagNum].addEventListener("complete", myListener);企通互联
};
4.新建一层,命名为action,在该层第一帧输入一下AS代码:
stop();北京网站建设
//数组myArray用来存储 载入的XML文档中的歌曲名称北京网站设计
var myArray = new Array();北京网站建设
//歌曲的总数企通互联
var mp3Total:Number;北京网站设计
var myXml = new XML();网站建设
myXml.ignoreWhite = true;网站制作
myXml.load("mp3list.xml");企通互联
myXml.onLoad = function() {网站设计
var e = myXml.firstChild.childNodes;网站建设
mp3Total = e.length;网页设计
for (var i = 0; i网站建设
myArray.push(e[i].attributes["title"]);网站制作
}北京网站设计
init();网站建设
_root["mp3Container"+flagNum].addEventListener("complete", myListener);北京网站建设
};网站建设
var myListener = new Object();网页设计
myListener.complete = function(eventObject) {北京网页设计
playNext();企通互联
};
5.保存文件,Ctrl+Enter测试影片并输出SWF文件。测试影片时会有错误提示,不用担心,这是由于没有生成XML文档的缘故。 www.qitongnet.com
6.创建XML文档:
<?xml version="1.0" encoding="utf-8"?>网页设计
<mp3Lists>网站设计
<item title="1.mp3" />北京网站建设
<item title="2.mp3" />网站建设
</mp3Lists>
将该文件保存在与原SWF文件相同的文件夹中,命名为mp3list.xml。
7.在原文件目录下放入两首mp3,默认名称为1.mp3,2.mp3,这里的名称和歌曲数目大家可以自己修改XML文件。
到此为止,一个连放两首MP3的播放器就可以使用了,打开SWF文件,你将会听到优美动听的音乐,同时看到播放进度显示等MP3播放器常有的功能。注意:要想让这个播放器用于你的网站上,必须把SWF文件和XML以及两首MP3文件上传到你的网站的同一个文件夹中。网页设计
北京网站建设