Flash Action Script总结【非此即彼问题】

1、非此即彼问题
【问题提出】:
控制背景音乐,点击后播放音乐,再次点击关闭音乐。
【解决方案】
一般来说为了区别两种状态,都会用一个MC来控制,MC做成两帧,第一帧是一个喇叭的样子,标识音乐开了,第二帧是喇叭加叉号,表示音乐关闭了。

这时候,改怎么写代码呢?代码写在整个MC上,还是写在这个MC里的2帧上呢?都可以。但是,我很懒,代码写的越少越好,
尽量不要写重复的东西。
假如控制声音的MC叫做bgs_mc,在主场景AS层写上以下代码:
bg_sound:Sound = new Sound(bgs_mc);
bg_sound.attachSound("bgSound");// 动态调用库中的声音。
bg_sound.setVolume(100);// 默认背景音乐打开
bg_sound.start(0,999);
bgs_mc.onRelease = function():Void{
 this.gotoAndStop(3 - this._currentframe);
 bg_sound.setVolume(100 - bg_sound.getVolume( ));
}

呵呵,你也许看到了,这里只是把背景音乐的音量调为0,来实现所谓的停止背景音乐的。

现在明白我为什么把它称作非此即彼的问题了。就是说。要么选1,要么选2。没有其他选择的问题。就可以类似上面写代码。

 

其他类似问题:控制全屏和还原、出示/隐藏帮助等等。自己发挥吧^_^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值