Flash As3.0 声音问题
一个swf调用另外一个swf,第二个swf中有音乐播放,点击第一个swf后想关闭第二个swf,并停止播放里面的音乐,如何实现呢?现在能关闭第二个swf,但是里面的音乐没有...
一个swf调用另外一个swf,第二个swf中有音乐播放,点击第一个swf后想关闭第二个swf,并停止播放里面的音乐,如何实现呢?现在能关闭第二个swf,但是里面的音乐没有停止。
展开
1个回答
展开全部
有一个全局停止声音的做法:
SoundMixer.stopAll();
它会停止所有正在播放的声音
但是建议用更规范的做法,即在第二个SWF里增加代码方法,在关闭时调用一下它,让第二个SWF自己处理并关闭声音
追问
第一个swf中无法调用第二个swf中的变量呀,能实现吗?目前直接在第二个中添加按钮,把自己的声音关了。
追答
对呀,可以的
举个简单的例子:
在你的第二个SWF里写上这样的代码,sayHello会给主SWF调用的
function sayHello():void
{
trace("Hello!");
}
在主SWF里写上这样的代码来测试:
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.display.MovieClip;
var l:Loader = new Loader();
l.load(new URLRequest("2.swf"));
l.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadComplete);
function onLoadComplete(event:Event):void
{
var mc:MovieClip = l.content as MovieClip;
mc.sayHello();//这里就调用了sayHello方法
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询