2011-07-05 6 views
1

私はフラッシュが初めてであるので、超初心者なら疑問に思ってください。Flash CS5のボタンでサウンドを制御する

私のフラッシュドキュメントでは、ユーザーが特定のボタンを押したときにサウンドをトリガーするページにいくつかのボタンを作成しています。添付されたオーディオの長さは1〜2分です。そのため、選択した場合は、特定の曲のサウンドをオフにするオプションをユーザーに与えたいと思います。誰かがどのようにをお知らせでき、私は、ユーザーが一度に複数のサウンドを再生しないことを確認する

import flash.media.SoundMixer; 
myButton.addEventListener(MouseEvent.CLICK,fn_clickHandler); 
function fn_clickHandler(IN_Event:MouseEvent):void 
{   
SoundMixer.stopAll();  
} 

:私は、次のAS3でページ上のボタンを持つことで行ってきましたそれを適用する?

ありがとうございました

答えて

1

私はあなたの質問を完全に理解しているかどうかはわかりません。私はここに右のそれをしなかった場合でも、答えは:

import flash.events.MouseEvent; 
import flash.media.Sound; 
import flash.media.SoundChannel; 

var SChannel : SoundChannel; 
var sound : Sound; 

// your sound managing buttons 
sound_1.addEventListener (MouseEvent.CLICK, handleChangeSound); 
sound_2.addEventListener (MouseEvent.CLICK, handleChangeSound); 
sound_3.addEventListener (MouseEvent.CLICK, handleChangeSound); 

// sound off button 
turn_off.addEventListener (MouseEvent.CLICK, turnOffSound); 

// sound off managining function 
function turnOffSound (e : MouseEvent) : void 
{ 
    SChannel.stop(); 
    SChannel = null; 
    sound = null; 
} 

// are sounds in your library Sound_1(), Sound_2(), Sound_3() 
function handleChangeSound (e : MouseEvent) : void 
{ 
    // in my situation since the button names were sound_1, .._2, .._3 
    // i can extract the sound id from names of the button. 
    // if you have some different approach you just need to adopt it. 
    var soundID : uint = e.target.name.split ('_')[1]; 

    // ifi sound is playing, stop it 
    if (SChannel) 
    { 
     turnOffSound(null); 
    } 

    // create new sound, from ID given 
    switch (soundID) 
    { 
     case 1 : 
      sound = new Sound_1(); 
      break; 

     case 2 : 
      sound = new Sound_2(); 
      break; 

     case 3 : 
      sound = new Sound_3(); 
      break; 
    } 

    // if sound was in the list start playing it. 
    if (sound) 
    { 
     SChannel = sound.play(); 
    } 
} 

ところで、あなたは静かに行くために全体のフラッシュページへの参照のうえされた場合にのみ、SoundMixerを使用しています。

関連する問題