深入了解SoundChannel類
在AS3基礎(chǔ)教程中,我們學(xué)習(xí)到要停止音樂的播放時(shí),Sound類并沒有提供stop()方法。因此,我們需要借助另一個(gè)類:SoundChannel。本節(jié)課將詳細(xì)介紹SoundChannel類的使用。復(fù)制并
在AS3基礎(chǔ)教程中,我們學(xué)習(xí)到要停止音樂的播放時(shí),Sound類并沒有提供stop()方法。因此,我們需要借助另一個(gè)類:SoundChannel。本節(jié)課將詳細(xì)介紹SoundChannel類的使用。
復(fù)制并修改代碼
首先,我們需要復(fù)制上一節(jié)課的33.fla文件,并將其重命名為34.fla。由于33課調(diào)用的是外部聲音,因此我們將34.fla文件也放在相同的文件夾內(nèi),以便無需修改33課的代碼。打開34.fla文件,按下F9鍵打開動(dòng)作面板,我們將直接分析并修改代碼。
實(shí)現(xiàn)聲音停止播放
上一節(jié)課的代碼如下所示:
```as3
var url:String"西海情歌.mp3";
var urr:URLRequestnew URLRequest(url);
var mysd:Soundnew Sound(urr);
();
```
以上代碼實(shí)現(xiàn)了外部聲音的播放?,F(xiàn)在我們的目標(biāo)是:當(dāng)舞臺(tái)的任意位置被單擊后,聲音應(yīng)當(dāng)停止播放。
添加舞臺(tái)單擊操作
首先,我們需要實(shí)現(xiàn)舞臺(tái)的單擊操作。與按鈕的單擊類似,不同之處在于事件源的不同:按鈕的事件源是按鈕的實(shí)例名,而舞臺(tái)的事件源是stage。因此,在代碼片段面板中直接使用會(huì)提示必須在舞臺(tái)上設(shè)置好實(shí)例名的對(duì)象。
新建一個(gè)圖層,從公用庫中拖拽一個(gè)按鈕到舞臺(tái)上,并在屬性面板中設(shè)定實(shí)例名為"anniu"。然后使用代碼片段功能添加鼠標(biāo)單擊命令。
管理代碼
為了方便管理代碼,通常會(huì)將所有代碼寫在同一個(gè)圖層內(nèi)。因此,我們將原先圖層1中的代碼剪切到Actions圖層內(nèi)。隨后刪除圖層1,因?yàn)閳D層2中的按鈕對(duì)于本例沒有用處,可以直接刪除。最后,將代碼中的"anniu"修改為"stage",這一步非常重要,務(wù)必不要忘記修改回來。