Flash中用按钮控制声音的几种方法_第1页
Flash中用按钮控制声音的几种方法_第2页
Flash中用按钮控制声音的几种方法_第3页
Flash中用按钮控制声音的几种方法_第4页
Flash中用按钮控制声音的几种方法_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Flash课件中声音控制的几种方法(学习几点心得) 在中小学教师开发的课件中,用Flash制作的比例越来越大,而声音作为多媒体课件的重要组成部分,应用得合理与否直接影响到课件整体艺术力的表现。在八月份的第一期Flash课件制作培训时,我们讲了两种应用声音的控制方法,一种是导入时间轴,用play,stop等命令进行简单控制;另一种是利用组件工具来控制声音的播放。显然,这两种方法是简单的、易掌握的,但能实现的功能却有所局限。本文整理了Flash声音控制的另外两种方法,希望对课件制作爱好者有所帮助。 一、用 Sound 类的 start 方法 很多人在制作一个带配音的 Flash 课件时,会设计了两个按钮,一个按钮控制音乐的播放,另一个按钮控制声音的停止。当单击按钮让音乐停止后,再次单击控制音乐播放的 按钮,音乐却从头开始播放了。这里可以用 Sound 类的 start 方法来控制音乐播放。 用 Sound 类的 start 方法来播放音乐必须给出必要的参数,通过参数控制音乐从停止处开始播放。否则,音乐就是直接从头开始播放。用sound类的position属性和start方法结合在一起就可以解决这个问题。具体操作步骤是: (1)将音乐导入到“库”中。右击“库”中的音乐对象,在弹出的快捷菜单中选择“链接”命令,打开“链接属性”对话框,勾选“为动作脚本导出”和“在第一帧导出”复选项, 设置标识符为“mySound”。 (2)在第 1帧上添加如下脚本: myMusic = new Sound();/建立一个名为 myMusic的声音对象 , myMusic.attachSound(mySound); /将链接标识符为 mySound的音乐捆绑到 myMusic对象上 。 (3)在播放音乐的按钮上添加如下脚本: on (press) var t=myMusic.position/1000; /计算声音当前播放的位置 myMusic.start(t); /从当前位置开始播放 position 是 Sound 类的一个属性,可以获得声音对象播放的当前位置。在制作Flash动画时,这个属性经常会被用到。比如制作MP3播放器,如果制作一个控制音乐播放进度的滑块,那么就可以用这个属性来实现相应的算法。 (注意:在操作时要注意字母的大小写) 二、利用影片剪辑来控制声音 (一) 导入声音素材 点击【文件】|【导入】|【导入到库】菜单命令,在弹出的【导入到库】对话框中,找到你要导入的声音文件,选中后点击打开按钮,将声音导入到库。 (三)制作声音影片剪辑元件: (1)点击【插入】|【新建元件】菜单命令,在弹出的新建元件对话中,名称输入“声音”、行为选【影片剪辑】,确定。 (2)选中“图层1”的第1帧,打开属性面板,在声音设置的对话框中,选择你导入的声音件,并在同步选项中选择数据流,如图1所示。 图1 (3)把声音文件在时间轴上展开。 (4)回到场景,把“声音”影片剪辑元件提到舞台,此时声音影片剪辑元件在舞台只看到一个注册点,用黑箭头工具点击注册点,(选中声音元件)打开属性面板,在属性面板中输入实例名“yinyue”,如图2所示。 图2 (四)制作声音控制元件 (1)点击【插入】|【新建元件】菜单命令,在弹出的新建元件对话中,名称输入“播放和暂停”、行为选【影片剪辑】,确定。 (2)把“图层1”命名为“按钮”,在此图层的第1帧中,执行【窗口】|【其它面板】|【公共库】|【按钮】菜单命令。提进一个按钮,用来控制“播放”。 (3)给播放按钮添加命令: on (release) gotoAndStop(3); _root.yinyue.play(); (4)在按钮图层的第3帧中插入空白关键帧,在此空白关键帧中,执行【窗口】|【其它面板】|【公共库】|【按钮】菜单命令。提进一个按钮,用来控制“暂停”,并在第4帧中按F5插入普通帧。 (5)给暂停按钮添加命令: on (release) gotoAndStop(1); _root.yinyue.stop(); (5)添加图层二,命名为“AS”在“AS”图层的第2帧和第4帧分别输入命令:stop();此时的时间轴面板如图3所示: 图3 (五)场景组装 (1)回到场景,从库里把“播放和暂停”元件提进舞台,放到适当的位置。选中“播放和暂停”元件,打开属性面板,在属性面板中输入实例名“yinyue”,如图4所示。 图4 (2)在公用库中提入一个按钮用来控制“停止”,点击“停止”按钮,打开动作面板,添加命令: on (release) _root.yinyue.gotoAndStop(1); _root.play.gotoAndStop(1); (3)添加图层二,在“图层二”的第1帧输入命令:_root.yinyue.stop(); (六)测试影片并保存。这部分内容可参考:/Article/ShowArticle.asp?ArticleID=3863音乐的重复播放1、首先,将音乐导入库。然后,在库中右击音乐文件链接,勾选“为动作脚本导出”和“在第一帧导出”复选项,在设置标识符为“aaa”。2、在时间AS层写下如下代码:mymusic= new Sound() mymusic.attachSound(aaa) mymusic.onSoundComplete = function() mymusic.start() /*声音播放完毕时自动调用的事件,这样,当声音播放完毕后自动执行mymusic.start(),使声音不断播放。如果声音播放时被代码停止(mymusic.stop() ),声音是不会重复播放的。 */mymusic.play() /使声音在动画开始时播放 var soundkey=1 /定义变量soundkey,监视声音播放情况 。3、在主场景中拖入一个按钮,在按钮上写下如下代码:on(release) soundkey=-soundkey/使变量值为原值相反数 if(soundkey=1) mymusic.stop() mymusic.start() /*如果soundkey值为正,则播放声音,mymusic.stop()使声音停止后 再播,以免声音产生叠加,影响效果*/ if(soundkey=-1) mymusic.stop() /如果soundkey值为负,则声音停止 至此完成,按ctrl+enter测试。 音乐的重复播放1、首先,将音乐导入库。然后,在库中右击音乐文件链接,勾选“为动作脚本导出”和“在第一帧导出”复选项,在设置标识符为“aaa”。2、在主场景中拖入一个按钮,将按钮命名为bofang_btn。3、在时间AS层写下如下代码:mymusic= new Sound() mymusic.attachSound(aaa) mymusic.onSoundComplete = function() mymusic.start() /*声音播放完毕时自动调用的事件,这样,当声音播放完毕后自动执行mymusic.start(),使声音不断播放。如果声音播放时被代码停止(mymusic.stop() ),声音是不会重复播放的。 */mymusic.play() /使声音在动画开始时播放 var soundkey=1 /定义变量soundkey,监视声音播放情况 。bofang_btn.onPress=function() soundkey=-soundkey/使变量值为原值相反数 if(soundkey=1) mymusic.stop() mymusic.start() /*如果soundkey值为正,则播放声音,mymusic.stop()使声音停止后 再播,以免声音产生叠加,影响效果*/ if(soundkey=-1) mymusic.stop() /如果soundkey值为负,则声音停止 /至此完成,按ctrl+enter测试。 音乐的播放与暂停1、首先,将音乐导入库。然后,在库中右击音乐文件链接,勾选“为动作脚本导出”和“在第一帧导出”复选项,在设置标识符为“aaa”。2、在主场景中拖入两个按钮,将两个按钮分别命名为bofang_btn和tingzhi_btn。3、在时间轴面板的AS层写下如下代码:var mymusic=new Sound();mymusic.attachSound(aaa);bofang_btn.onPress=function() var t=mymusic.position/1000;mymusic.stop();mymusic.start(t);tingzhi_btn.onPress=function() mymusic.stop();/至此完成,按ctrl+enter 测试。代码第五行,加入了mymusic.stop(); 如果不加这句,那么连续点击播放按钮,音乐的音量会不断增大。对于下面这段代码bofang_btn.onPress=function()var t=mymusic.position/1000;mymusic.stop();mymusic.start(t);我的理解是,当点击bofang_btn按钮时,开始获取音乐播放的位置,并赋值给变量t,然后停止前一个声音,从t处开始播放。播放、暂停、停止三个按钮控制音乐播放1、首先,将音乐导入库。然后,在库中右击音乐文件链接,勾选“为动作脚本导出”和“在第一帧导出”复选项,在设置标识符为“aaa”。2、在主场景中拖入三个按钮,将三个按钮分别命名为play_btn、pause_btn、stop_btn。3、在时间轴面板插入图层命名为“AS”层,在“AS”层写下如下代码:var mymusic=new Sound;mymusic.attachSound(aaa);play_btn.onPress=function() mymusic.stop(); mymusic.start(t);pause_btn.onPress=function() mymusic.stop(); t=mymusic.position/1000;stop_btn.onPress=function() mymusic.stop(); t=0;/至此完成,按ctrl+enter测试。 播放、暂停、停止三个按钮控制音乐播放(播放、暂停按钮合二为一)1、首先,将音乐导入库。然后,在库中右击音乐文件链接,勾选“为动作脚本导出”和“在第一帧导出”复选项,在设置标识符为“moonlight shadow.mp3”。2、从公用库中拖入两个个按钮到主场景中,将两个按钮分别命名为play_btn、stop_btn,锁定该图层。3、新建一个图层,从公用库中拖入一个按钮,将这个按钮命名为pause_btn,并把它拖放到play_btn的位置。3、在时间轴面板插入图层命名为“AS”层,在“AS”层写下如下代码:var mymusic=new Sound();/创建一个新的声音对象mymusicmymusic.attachSound(moonlight shadow.mp3);/将声音对象myumusic与库中的音乐moonlight shadow.mp3进行链接pause_btn._visible=false;/隐藏暂停按钮play_btn.onPress=function()/当点击play_btn按钮时,执行大括号内的命令 mymusic.start(t);/从t处开始播放 pause_btn._visible=true;/显示暂停按钮 play_btn._visible=false;/隐藏播放按钮pause_btn.onPress=function() t=mymusic.position/1000;/获取音乐播放的位置并赋值给变量t mymusic.stop();/停止播放 pause_btn._visible=false; play_btn._visible=true;stop_btn.onPress=function() mymusic.stop(); t=0;/清除变量 play_btn._visible=true; pause_btn._visible=false;/至此完成,按ctrl+enter测试。/在上述代码后加入如下代码,实现当音乐播放完毕后,回到初始状态。mymusic.onSoundComplete=function()/音乐播放完毕之后执行大括号内的命令t=0;play_btn._visible=true;pause_btn._visible=false; 把播放和暂停真正做到一个按钮上从公用库拖入两个按钮到舞台,分别命名为pla_pau_btn、sto

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论