Reputation: 3
I am making an e-learning module with multiple frames.
I want to add a refreshbutton, so that a user can reload a frame (with a movieclip), so that he or she can watch it again. I use one layer where I place all my actions.
I tried, the following, but that doesn't work
refresh_btn.addEventListener(MouseEvent.MOUSE_DOWN, goToCurrentPageHandler) ;
function goToCurrentPageHandler (event:MouseEvent) : void
{
SoundMixer.stopAll();
gotoAndPlay();
I also tried:
/*refresh_button*/
refresh_btn.addEventListener(MouseEvent.MOUSE_DOWN, goToCurrentPageHandler) ;
function goToCurrentPageHandler (event:MouseEvent) : void
{
SoundMixer.stopAll();
gotoAndPlay(currentFrame);
But when I press the refresh button it starts playing the next frame.
Can someone please help me.
Thanks!
Upvotes: 0
Views: 2843
Reputation: 567
without refreshing you can try simply insert stop button function inside play buttons function then no need to refresh you should first stop sound chaneel sc inorder to close sound s . then disable and enable play and stop buttons by //object..mouseEnabled = false; , //object..mouseEnabled = true;
import flash.media.SoundChannel;
import flash.events.MouseEvent;
import flash.events.Event;
btn_play.addEventListener(MouseEvent.CLICK, PlayStream);
var sc: SoundChannel = new SoundChannel();
var s: Sound = new Sound(new URLRequest("folder/song .mp3"));
function PlayStream(event: MouseEvent): void {
sc = s.play();
btn_play.mouseEnabled = false;
btn_stop.mouseEnabled = true;
btn_stop.addEventListener(MouseEvent.CLICK, StopStream);
function StopStream(event: MouseEvent): void {
SoundMixer.stopAll();
sc.stop();
s.close();
btn_play.mouseEnabled = true;
btn_stop.mouseEnabled = false;
}
}
stop();
Upvotes: 1
Reputation: 13529
gotoAndPlay(currentFrame);
actually plays the next one because you are saying "get the current position and start playing from there". Your sound is in a movie clip called *frame_1*. So you should use:
frame_1.gotoAndPlay(1);
I.e. your code should look like that:
/*refresh_button*/
refresh_btn.addEventListener(MouseEvent.MOUSE_DOWN, goToCurrentPageHandler) ;
function goToCurrentPageHandler (event:MouseEvent) : void
{
SoundMixer.stopAll();
frame_1.gotoAndPlay(1);
}
Upvotes: 0