我做的 Flash +Xml 音乐播放器
最近狂泡AS,嘿嘿,总算有点成果了,跟大家分享一下~
开始啦~
新建一个新文件第一帧的AS: stop(); musicXML = new XML(); //定义musicXML 是一个XML对象; musicXML.load("sound.xml"); //加载XML数据; musicXML.ignoreWhite = true; //忽略空格和回车; musicXML.onLoad = function(success) { //如果加载成功跳转到第二帧; if (success) { gotoAndStop(2); } };
第二帧的AS mxml = musicXML.firstChild.childNodes; mtotal = mxml.length; //得到XML下第一个节点的子节点总数;
//下面开始复制子节点数量------------------------------- //这个是直接选择歌曲编号的按钮 for (i=0; i musicPlay(0); //一开始就调用 function 播放音乐,如果不想这样就把它删除了.
function musicPlay(mNo) { sName = mxml[mNo].attributes.sName; //获得XML里面第 mNo 条数据的歌曲名称 mNo 由歌曲编号按钮提供的. mUrl = mxml[mNo].attributes.sUrl; //获得XML里面第 mNo 条数据的歌曲URL. music.loadSound(mUrl, true); //加载音乐,跟XML不同的是,声音的 onLoad 事件是放在loadSound后面的.奇怪. music.setVolume(0); //设定加载的声音音量为0. }
//下一首歌曲按钮的function,当然你也可以写到按钮里面的,但这样写会方便很多的. nextmusic.onRelease = function() { if (index<(mtotal-1)) { index++; } else { index = 1; } musicPlay(index); };
//前一首歌曲的按钮: prevmusic.onRelease = function() { if (index<=0) { index = (mtotal-1); } else { index--; } musicPlay(index); };
还有的就是在一个播放按钮,一个停止按钮的AS
播放按钮:播放按钮带有暂停效果的,所以用了一个按钮和两帧。播放按钮的第一帧: Stop(); a=0; 初始化A
播放按钮的第一帧按钮AS: on (press) { a = a+1; //初始值在事件轴上面定义. if (a%2 == 1) { //进行基偶校验 _root.music.stop(); this.gotoAndStop(2); } else { _root.music.start(_root.b); this.gotoAndStop(1); } }
第二帧: Stop();
停止按钮AS: on (release) { sp_btn.a = 1; music.start(0); music.stop(); }
AS基本就完了,代码都算是简单,但能实现动态加载数据和播放,暂停功能,控制音量,显示播放时间和歌曲名称。
[upload=rar]viewfile.asp?ID=96710[/upload]
希望会对大家学习有帮助吧~
开始啦~
新建一个新文件第一帧的AS: stop(); musicXML = new XML(); //定义musicXML 是一个XML对象; musicXML.load("sound.xml"); //加载XML数据; musicXML.ignoreWhite = true; //忽略空格和回车; musicXML.onLoad = function(success) { //如果加载成功跳转到第二帧; if (success) { gotoAndStop(2); } };
第二帧的AS mxml = musicXML.firstChild.childNodes; mtotal = mxml.length; //得到XML下第一个节点的子节点总数;
//下面开始复制子节点数量------------------------------- //这个是直接选择歌曲编号的按钮 for (i=0; i musicPlay(0); //一开始就调用 function 播放音乐,如果不想这样就把它删除了.
function musicPlay(mNo) { sName = mxml[mNo].attributes.sName; //获得XML里面第 mNo 条数据的歌曲名称 mNo 由歌曲编号按钮提供的. mUrl = mxml[mNo].attributes.sUrl; //获得XML里面第 mNo 条数据的歌曲URL. music.loadSound(mUrl, true); //加载音乐,跟XML不同的是,声音的 onLoad 事件是放在loadSound后面的.奇怪. music.setVolume(0); //设定加载的声音音量为0. }
//下一首歌曲按钮的function,当然你也可以写到按钮里面的,但这样写会方便很多的. nextmusic.onRelease = function() { if (index<(mtotal-1)) { index++; } else { index = 1; } musicPlay(index); };
//前一首歌曲的按钮: prevmusic.onRelease = function() { if (index<=0) { index = (mtotal-1); } else { index--; } musicPlay(index); };
还有的就是在一个播放按钮,一个停止按钮的AS
播放按钮:播放按钮带有暂停效果的,所以用了一个按钮和两帧。播放按钮的第一帧: Stop(); a=0; 初始化A
播放按钮的第一帧按钮AS: on (press) { a = a+1; //初始值在事件轴上面定义. if (a%2 == 1) { //进行基偶校验 _root.music.stop(); this.gotoAndStop(2); } else { _root.music.start(_root.b); this.gotoAndStop(1); } }
第二帧: Stop();
停止按钮AS: on (release) { sp_btn.a = 1; music.start(0); music.stop(); }
AS基本就完了,代码都算是简单,但能实现动态加载数据和播放,暂停功能,控制音量,显示播放时间和歌曲名称。
[upload=rar]viewfile.asp?ID=96710[/upload]
希望会对大家学习有帮助吧~
补充:flash教程,Action