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 閱讀(367)
評論(0) 編輯 收藏 所屬分類:
flex2.0