AS入门教程第九课使用声音第一节-Sound类[本文已收录教程库] - Flash互助课堂...

来源:百度文库 编辑:神马文学网 时间:2024/03/29 19:25:52
使用声音
Sound类提供了对声音的操作,要使用Sound类必须使用new 新建一个Sound实例:
var mysound:Sound = new Sound();
有了Sound实例,就可以使用Sound类的方法来操作声音了。
1.        从库中导入声音到舞台。
我们可以将声音素材导入到库中,然后在运行时将它加载到舞台上,这样做灵活性比较大,也比较好控制。将声音导入到库中后,对它进行一些设置,以便更好地应用。首先在库中声音无件上,点右键>属性,在属性面板中选择声音格式为mp3,并将使用导入时品质前的钩去掉,这样声音的体积将大地降低。
回到库中,在声音元件上点右键>连接,在连接面板中,将“为ActionSpript运行时导出“前打钩,在标识符栏中为声音取一个标识符。这同MC一样。
attachSound()方法:将库中的声音加载到舞台上。
用法:Sound实例. attachSound(标识符);
start()方法:声音开始播放。
用法:start(开始的秒数,循环次数);
如果没有参数,则从开头播放1次。
声音还有个事件:onSoundComplete,这个事件是在声音结束播放时调用。很常见的一个用法,比如说话,没说话时嘴不动,话说完后嘴也不动,我就可以在声音结束时,让嘴停止,用这个事件就很方便了。
到目前为止我们已经能够将库中的声音加载到舞台上并让它播放了。
点击下面的小丑他就会开口说话了:
',1)">
代码: var sy:Sound = new Sound();
xc_mc.stop();
xc_mc.onRelease = function(){
sy.attachSound("dsm");
sy.start();
xc_mc.play();
}
sy.onSoundComplete = function(){
xc_mc.stop();
}
复制代码
声音开始播放后,你后悔了,烦它,就想让它停下来,那么请用:
stop()方法: 使声音停止播放。
用法:stop(标识符)
如果没有参数将停止所有的声音。
将上面的代码改为: var i=1;
var sy:Sound = new Sound();
xc_mc.stop();
xc_mc.onRelease = function(){
if(i==1){;
sy.attachSound("dsm");
sy.start();
xc_mc.play();
i=0;
} else {
xc_mc.stop();
sy.stop();
i=1;
}
}
sy.onSoundComplete = function(){
xc_mc.stop();
}
复制代码
测试影片,在小丑还没骂完人的时候,再次点他,他就收口了。敢骂人!一耳光就收拾住了。不过他不长记性,你再点他时,他还骂你。
或许你也不是太烦他的声音,只是觉得他声音太大,你想让他小声点,那么请用:
setVolume()方法:设置声音大小,0-100。
用法:setVolume(值);
例子下面再说。
这里好象有些问题,声音只有开始和结束,但我还想要一个暂停的功能.可惜,在AS中的sound类并没有暂停功能,那么是不是就没有办法了呢?其实办法都是人想出来的,暂停无非就是在停止播放时,记住当前正播放声音的位置.非常幸运,sound类有这个属性,它就是:position
这个属性是声音当前已播放的毫秒数.有了这个属性就为我们实现暂停功能提供了可能.在停止播放时记住停止的位置,在播放时从停止的位置开始播放就实现的暂停的功能.还是以那个小丑为例,将代码改为: var i=1;
var ztd=0;
var sy:Sound = new Sound();
xc_mc.stop();
xc_mc.onRelease = function(){
if(i==1){;
sy.attachSound("dsm");
sy.start(ztd);
xc_mc.play();
i=0;
} else {
xc_mc.stop();
ztd = sy.position/1000;
sy.stop();
i=1;
}
}
sy.onSoundComplete = function(){
i=1;
ztd=0;
xc_mc.stop();
}
复制代码
加载mp3
使用Sound类的loadSound()可以加载外部的声音文件。
格式:Sound实例.loadSound(“声音文件地址”,一个布尔值);
如果布尔值为true则声音为声音流形式,如果为false则为事件模式。
例,我们要加载一曲mp3歌曲,可用下面的代码: var mymp3:Sound = new Sound();
mymp3.loadSound(“ http://1968.wzeg.com/UploadFiles/2008-6/436743781.mp3 “,false);
mymp3.start();
复制代码
这一节就讲这么多吧,下一节再具体应用到实例,并会介绍更多的Sound类属性和方法.
AS入门教程第九课使用声音第一节-Sound类[本文已收录教程库] - Flash互助课堂... AS入门教程第7课影片剪辑-第9节使用滤镜[本文已收录教程库] - Flash互助课堂 -... AS入门教程第7课第12节-使用颜色[本文已收录教程库] - Flash互助课堂 - 中国... AS入门教程第三课-AS基本语法[原创][本文已收录教程库] - Flash互助课堂 - ... AS入门教程第五课-数组原创][本文已收录教程库] - Flash互助课堂 - 中国教程网... AS入门教程第二课-面向对象编程基础[原创][本文已收录教程库] - Flash互助课堂 ... AS入门教程第7课影片剪辑第6节使用遮罩[本文已收录教程库] - Flash互助课堂 - ... AS入门教程第7课影片剪辑第10节-用AS绘图[本文已收录教程库] - Flash互助课堂... AS入门教程第7课第3节控制时间轴[原创][本文已收录教程库] - Flash互助课堂 -... AS入门教程第7课综合练习-拼图游戏的制作[原创][本文已收录教程库] - Flash互助... AS入门教程第4课AS常用语句第一节-运算符[原创][本文已收录教程库] - Flash互... AS入门教程第7课影片剪辑第7节-AS实现过渡效果[本文已收录教程库] - Flash互助... AS入门教程第六课文本与字符第一节-创建文本[原创][本文已收录教程库] - Flash互... AS入门教程第8课-日期与时间[本文已收录教程库](查至 36/3) - Flash互助课... AS入门教程第四课AS常用语句第二节-条件语句[原创][本文已收录教程库] - Flash... AS入门教程第四课AS常用语句第三节-循环语句[原创][本文已收录教程库] - Flash... AS入门教程第六课文本与字符第四节-字符串[原创][本文已收录教程库] - Flash互助... AS入门教程第7课影片剪辑二节加载swf文件[原创][本文已收录教程库] - Flash互... AS入门教程第7课影片剪辑第5节拖动与碰撞检测[原创][本文已收录教程库] - Flash... 加载外部.swf影片的视频播放器制作[原创][本文已收录教程库] - Flash互助课堂 ... AS入门教程第六课文本与字符第二节-文本属性[原创][本文已收录教程库] - Flash互... AS入门教程第六课文本与字符第三节-事件与方法[原创][本文已收录教程库] - Flash... Flash教程:梦幻仙境制作教程[本文已收录教程库] - Flash研讨 - 中国教程网论... 新手来看:Flahs as入门教程-Flash教程