私はアクションスクリプトとフラッシュが初めてで、オンラインラジオプレーヤーを作成しています。ここで私は単純な問題に直面しています。画像にカーソルを合わせたときの再生ボタンか停止ボタンか、ボタン画像を変更したいです。各ボタンのシンボルを作成し、インスタンス名を作成しました。i には、最初の再生ボタンと次の再生ボタン、停止ボタンと途中降機ボタンがそれぞれ配置されています。私はこれをすべて1つのレイヤーで行いました。ここに私のホバーアクションスクリプト
import flash.events.MouseEvent;
import flash.media.Sound;
import flash.net.URLRequest;
import flash.media.SoundChannel;
import flash.media.SoundTransform;
import flash.events.Event;
/****stop-control:***/
btnstop.addEventListener(MouseEvent.MOUSE_OUT,StopOut);
btnstopo.addEventListener(MouseEvent.MOUSE_OVER,StopOver);
function StopOver(evt:MouseEvent):void
{
btnstopo.visible=false;
btnstop.visible=true;
}
function StopOut(evt:MouseEvent):void
{
btnstop.visible=false;
btnstopo.visible=true;
}
/*****Play control:****/
playbtn.addEventListener(MouseEvent.MOUSE_OUT,PlayOut);
btnplayo.addEventListener(MouseEvent.MOUSE_OVER,PlayOver);
function PlayOver(evt:MouseEvent):void
{
btnplayo.visible=false;
playbtn.visible=true;
}
function PlayOut(evt:MouseEvent):void
{
playbtn.visible=false;
btnplayo.visible=true;
}
var soundfile:URLRequest = new URLRequest('http://live32.radio.com:80/;stream1.mp3');
var channel:SoundChannel = new SoundChannel();
var sTransform:SoundTransform = new SoundTransform();
var isplay=1;
var myMusic:Sound = new Sound();
myMusic.load(soundfile);
channel=myMusic.play();
playbtn.addEventListener(MouseEvent.CLICK,PlayRadio);
btnstop.addEventListener(MouseEvent.CLICK,StopRadio);
function PlayRadio(evt:Event):void
{
if(isplay==0)
{
isplay=1;
/*var myMusic:Sound = new Sound();
myMusic.load(soundfile);
channel=myMusic.play(); */
SoundMixer.soundTransform = new SoundTransform(1);
btnstop.visible=true;
playbtn.visible=false;
}
}
function StopRadio(evt:Event):void
{
if(isplay==1)
{
SoundMixer.soundTransform = new SoundTransform(0);
isplay=0;
btnstop.visible=false;
playbtn.visible=true;
}
}
ここで私の問題は、停止ボタンを押したときに正常に機能していることです。しかし、停止後、再生ボタンを表示する必要があります。しかし、私のコードによれば、停止後に停止ボタンが再び表示されます。停止ボタンを表示する理由はわかっています。MOUSE_OUT がその理由です。どうすれば修正できるかわかりません。誰でもクリアしてください、よろしくお願いします