Flex中的按钮音效使用方法和FLASH中不一样了,
如何给按钮添加声音效果要用到Effect标签,具体做法如下:
新建一个as文件ButtonSound.as
class ButtonSound extends mx.effects.Effect
{
[Embed(mimeType="audio/mpeg",source="Button.mp3")]
//注意不要使用wav格式的声音
var soundSymbol:String;
var s:Sound;
public function playEffect():Void
{
super.playEffect();
s = new Sound();
s.attachSound(soundSymbol);
s.start();
}
public function endEffect():Void
{
s.stop();
}
}
ButtonSound.as同级目录下新建一个MXML文件,代码如下:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" xmlns:local="*"
pageTitle="ButtonSound" >
<!-- 声明音效 -->
<mx:Effect>
<local:ButtonSound name="ButtonSoundEffect"/>
</mx:Effect>
<mx:Button label="RIACN" click="getURL('http://www.riacn.com','_blank');" mouseDownEffect="ButtonSoundEffect"/>
</mx:Application>
另外mxml文件的命名要注意,不要用sound作为mxml的名字,否则Flex会认为文件名和内置的Sound对象冲突。
<?xml version="1.0" encoding="gb2312"?>
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml">
<mx:MediaDisplay id="mp1" contentPath="kissme02.mp3"/>
<mx:Canvas>
<mx:Button id="s2" label="e路信峰 要 开Sound" click="mp1.play();s2.visible=false;s1.visible=true"
fontSize="18"/>
<mx:Button id="s1" label="e路信峰 要 关Sound" click="mp1.stop();s1.visible=false;s2.visible=true"
fontSize="18"/>
</mx:Canvas>
</mx:Application>
posted on 2007-02-28 13:54
☜♥☞MengChuChen 阅读(356)
评论(0) 编辑 收藏 所属分类:
flex2.0