var bottom = key.vol._y+100; //定义拖动按钮的最低点
key.vol.onPress = function() {
this.startDrag(true,left,top,right,bottom); //按钮按下拖动范围
}
onEnterFrame = function() {
v = int(key.textInput.value.text); //取得输入框内的值
mySound.setVolume(v); //设定音量
}
Position, Duration 和 暂停
mySound.position();
唯读指令, 主要是取得目前播放音乐的毫秒数(1秒 = 1000毫秒), 在音乐播放之后才能够取得, 在一开始start()之后使用是无法取得的
mySound.duration();
唯读指令, 主要是取得音乐的总毫秒数 要使音乐暂停, 播放的时候再继续之前暂停的位置开始播放, 我们可以先取得按钮按下暂停时的position以取得位置, 然后再次按下播放的时候就使用start()当中的SecondsOffset使音乐从暂停的部分开始播放, 如:
mySound = new Sound();
mySound.attachSound("tomato");
var SecondsOffset = 0; //设定SecondsOffset为0
p1.onRelease = function() {
mySound.start(SecondsOffset, 0); //播放按钮按下开始从0offset播放
}
p2.onRelease = function() {
SecondsOffset = mySound.position/1000; //暂停按钮按下时记录目前位置并换成秒数
mySound.stop(); //音乐暂停
}
onEnterFrame = function() { //这里是循环部分
if(mySound.position == mySound.duration) { //如果播放的毫秒数等于音乐总毫秒数
mySound.start(0, 99); //开始循环播放99次
}
}
只要会了以上的方法, 倒退播放和快速播放就非常简单了, 如下:
1. 场景上建立两个按钮, 分别为(倒退 rev 和 快速播放 ff)
2. 在第一帧使用以下代码 :
mySound = new Sound();
mySound.attachSound("tomato");
mySound.start();
var SecondsOffset = 0;
var reverse = foward = false; //设定倒退和前进变量为false
onEnterFrame = function () {
if (reverse && mySound.position > 0) { //当倒退按下且音乐秒数大于0
mySound.stop(); //音乐停止
SecondsOffset -= .5; //offset倒退0.5秒
mySound.start(SecondsOffset, 0); //音乐从倒退的0.5秒开始播放
}
if (foward && mySound.position <= mySound.duration) { //当快速播放按下且音乐不为结束
mySound.stop();
SecondsOffset += .5; //offset前进0.5秒
mySound.start(SecondsOffset, 0);
}
rev.onPress = function() { //当倒退按下并取得position
SecondsOffset = mySound.position/1000;
reverse = true; //reverse变量为true
};
rev.onRelease = function() { //当倒退放开就设定reverse变量为false
reverse = false;
}
ff.onPress = function() { //同上
SecondsOffset = mySound.position/1000;
foward = true;
};
ff.onRelease = function() {
foward = false;
}
};
至于loadSound部分就写一下进度条的写法










