如何利用ActionScript来控制音量淡出淡入?
解决思路
运用FLASH提供的普通的关闭音乐功能,很难实现点击一个按钮就能随意控制音乐的效果,那么,这里到底有什么奥妙呢?其实方法很简单。将两个同样的按钮放置在不同的影帧里,然后利用按钮的Action来切换这两个影帧。用绑定库里的声音的方法来控制声音。可以通过AS来控制变量以达到淡入淡出的效果。
具体步骤
1、??运行Flash?MX?2004,文档属性默认。
2、??单击【文件】|【导入】|【导入到库】命令,导入一段音乐。设置此声音文件的连接属性,标识符为“music”。如图3.3.65所示。
图3.3.65?????连接属性设置
3、??场景1时间轴的第1帧加入绑定声音语句:
loop?=?new?Sound();//这是绑定声音的代码
loop.attachSound("music");//music是在库里做链接时的标识名
4、?新建一个影片剪辑元件,命名为“da”。进入编辑区,在时间轴的第1帧加入:
stop();();//动画播放时让da(大)停在第一帧
第2帧加:
_root.loop.start(0,200);//控制声音开始播放
_root.loop.setVolume(0);//设置声音音量为0
第3帧加:
if?(i>=100)?{????//设置判定条件,当i>=100时,执行括号中的语句
????_root.gotoAndStop("on");//主时间轴跳转影帧
}
i?=?i+10;
_root.loop.setVolume(i);//设置声音音量为i
第15帧加:
gotoAndPlay(3);//返回第三帧,反复执行
时间线如图3.3.66所示。
图3.3.66???影片剪辑“da”的时间线
5、新建一个影片剪辑,命名为“xiao”。进入编辑区以后在第1帧加:
stop();//动画播放时让da(大)停在第一帧
第2帧加:
if?(i>0)?{
????i?=?i-10;
????_root.loop.setVolume(i);
}?else?{
????_root.loop.stop();//假如i<=0,让声音停止
????_root.gotoAndStop("off");//主时间轴影帧跳转
}
第10帧加:
gotoAndPlay(2);//返回第二帧,反复执行
时间线如图3.3.67所示。
图3.3.67???影片剪辑“xiao”时间线
6、新建两个文字按钮,本别命名为“开始音乐”和“停止停止”。如图3.3.68所示。
图3.3.68??“开始音乐”按钮
1、?返回到场景1,在第2帧插入要害帧。把影片剪辑“da”拖放到场景中,在下面的属性面板中设置他的实例名为“da”。同时把“开始音乐”按钮拖放到舞台中。如图3.3.69所示。
图3.3.69???设置影片剪辑属性
2、?单击“开始音乐”按钮,打开AS面板,添加AS:
on?(release)?{
????tellTarget?("_root.da")?{????//指向_root.da?
????????gotoAndPlay(2);????????//播放
????}
}
3、?在第11帧插入一个要害帧。按照步骤6的方法把影片剪辑“xiao”和“停止音乐”按钮拖放到场景中。如图3.3.70所示。
?
图3.3.70?????第11帧的影片剪辑属性设置
4、?单击按钮,打开AS面板添加AS:
on?(release)?{
????tellTarget?(_root.xiao)?{????//指向影片剪辑xiao
????????gotoAndPlay(2);?????????//跳转到第2帧播放
????}
}
10、这个事例做完了。测试保存吧。请参看源文件“控制音量淡出淡入”。
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |