为什么我的声音在Flash中不起作用?

时间:2010-03-18 00:53:57

标签: flash actionscript audio actionscript-2

这就是我所拥有的代码,它位于电影的第一帧。

nature = new Sound(this);
nature.attachSound("sound_naturally");
nature.setVolume(50);
nature.start(0,0);
nature.onSoundComplete = function(){
    nature.start(0,0);
}
trace(nature);

跟踪在运行时输出'[object Object]'。

我将声音导出到ActionScript,链接标识符为'sound_naturally',而不是导出到第一帧。我不明白为什么它不起作用。我确实喜欢3小时之前完全相同的东西,它工作正常,但我丢失了文件所以我不得不重做它现在它根本不起作用。

将Flash 10与ActionScript 2.0一起使用

2 个答案:

答案 0 :(得分:2)

start(0,0)start()都有效。你的代码不是问题。

正在发生的事情是导出SWF时声音文件没有被附加,因为它只位于您的库中而不是在任何地方使用。显然这就是为什么flash具有“第一帧导出”的原因,但这会使预加载变得棘手,对吧?所以,另一种选择是:

  • 将声音放在时间轴的未使用帧上(即:SWF的最后一帧)。这将强制闪光灯在发布SWF时包含声音。
  • 预加载您的主电影,并确保只在所有内容完全加载时才调用上面的脚本。

这是一种解决方案,但理想情况下我建议使用loadSound()方法在外部加载声音。

祝你好运!

答案 1 :(得分:0)

start()中的第二个参数告诉它播放声音的次数,并且那里有一个0。

试试nature.start()