Actionscript 3 使用变量一次只允许播放一个视频
我最近创建了一个有四个按钮的项目。每个按钮向舞台添加一个FLV播放器并播放视频。在测试过程中,我注意到在第一个函数加载完电影之前单击另一个按钮,将播放两部电影 有没有更有效的处理方法?我觉得这里有很多冗余代码,有没有更好的方法来执行以下操作:Actionscript 3 使用变量一次只允许播放一个视频,actionscript-3,flash,conditional-statements,memory-efficient,Actionscript 3,Flash,Conditional Statements,Memory Efficient,我最近创建了一个有四个按钮的项目。每个按钮向舞台添加一个FLV播放器并播放视频。在测试过程中,我注意到在第一个函数加载完电影之前单击另一个按钮,将播放两部电影 有没有更有效的处理方法?我觉得这里有很多冗余代码,有没有更好的方法来执行以下操作: 按下按钮一 加载一个视频 忽略所有其他事件侦听器,直到电影结束,或用户解除视频(单击以解除) 我最初认为创建两个函数是个好主意,一个删除所有事件侦听器,另一个添加所有事件侦听器。按下按钮后,在加载FLVPlayback之前,删除所有事件侦听器。电影完成
- 按下按钮一
- 加载一个视频
- 忽略所有其他事件侦听器,直到电影结束,或用户解除视频(单击以解除)
import flash.events.Event;
var canLaunchMovie:Boolean;
buttonMCOne.addEventListener(MouseEvent.MOUSE_DOWN, playMovieOne);
buttonMCTwo.addEventListener(MouseEvent.MOUSE_DOWN, playMovieTwo);
buttonMCThree.addEventListener(MouseEvent.MOUSE_DOWN, playMovieThree);
buttonMCFour.addEventListener(MouseEvent.MOUSE_DOWN, playMovieFour);
function playMovieOne(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("One Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie one) Dave");
}
}
function playMovieTwo(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("Two Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie two) Dave");
}
}
function playMovieThree(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("Three Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie three) Dave");
}
}
function playMovieFour(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("Four Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie four) Dave");
}
}
您不需要有多个flvplayback。
您只需更改flvplayback的
源代码。Arg。。所以从技术上来说,这个更新不起作用。我做的作业总是正确的,而不是做平等性检查。它之所以有效,是因为每个按钮都会指定canLaunchMovie=true;与论坛网站不同,我们不使用“感谢”或“感谢任何帮助”或签名。顺便说一句,这是“提前感谢”,而不是“提前感谢”。
import flash.events.Event;
var canLaunchMovie:Boolean;
buttonMCOne.addEventListener(MouseEvent.MOUSE_DOWN, playMovieOne);
buttonMCTwo.addEventListener(MouseEvent.MOUSE_DOWN, playMovieTwo);
buttonMCThree.addEventListener(MouseEvent.MOUSE_DOWN, playMovieThree);
buttonMCFour.addEventListener(MouseEvent.MOUSE_DOWN, playMovieFour);
function playMovieOne(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("One Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie one) Dave");
}
}
function playMovieTwo(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("Two Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie two) Dave");
}
}
function playMovieThree(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("Three Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie three) Dave");
}
}
function playMovieFour(e:Event):void {
if(canLaunchMovie = true){
this.canLaunchMovie = false;
trace("Four Can Play"); // do all that video stuff for video one
} else {
trace("I can't do that(play movie four) Dave");
}
}