actionscript-3 - AS3在第一个音频文件完成播放后播放第二个音频文件

标签 actionscript-3 audio compiler-errors

任何帮助将不胜感激。

我正在加载这样的声音:

var mySound:Sound = new Sound();
mySound.load(new URLRequest("audio/filename.mp3"));
mySoundChannel:SoundChannel = mySound.play();

然后,我添加一个侦听器,并尝试使用SOUND_COMPLETE事件调用一个函数,如下所示:
mySoundChannel.addEventListener(Event.SOUND_COMPLETE,audioComplete);
function audioComplete(Event:Event){
trace("done!");
}

但是,我不断收到此错误:“找不到1046:Type或不是编译时常量:Event。”

谁能给我提示我做错了什么?

谢谢。

最佳答案

更改

function audioComplete(Event:Event){


function audioComplete(event:Event){

AS区分大小写。 eventEvent不同。 Event是类的名称。 event是您分配给Event类型的本地变量的名称

此外,声音会异步加载到Flash中。这意味着,当您调用sound.load()时,Flash Player将开始在新线程上加载声音,并在加载声音时继续下一行代码。声音完全加载时,将触发Event.COMPLETE事件,声音播放完毕后,将触发 NOT

要在声音播放完毕后触发功能,请使用setTimeout
var mySound:Sound = new Sound();
mySound.load(new URLRequest("audio/filename.mp3"));
mySound.addEventListener(Event.COMPLETE, soundLoaded);

function soundLoaded(e:Event):void {
    mySound.play();
    setTimeout(audioComplete, mySound.length);
}
function audioComplete(){
    trace("done!");
}

关于actionscript-3 - AS3在第一个音频文件完成播放后播放第二个音频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7773581/

相关文章:

您可以使用 Adob​​e 的 Alchemy 来执行批处理文件吗?

haskell - "The type signature for ‘main’ 缺少伴随绑定(bind)是什么意思”?

audio - FFmpeg - 如何设置输出样本大小

c项目编译错误

excel - VBA 代码返回 if 语句的编译错误

javascript - 在 actionscript 3.0 中使用函数创建对象

php - ActionScript 看不到文本框的更改

图像作为 Actionscript 3 中的变量

java - Android AudioRecord - 如何获得一分钟的平均音量

vb.net - 类型 ACC 音频 1.28