Actionscript 3 如何在actionscript 3.0中为音乐播放器创建自定义seekbar

Actionscript 3 如何在actionscript 3.0中为音乐播放器创建自定义seekbar,actionscript-3,flash,Actionscript 3,Flash,我正在创建简单的音乐播放器。它将只播放一首歌。我想创建一个非常简单的seekbar。我想要一个图形作为搜索组件-这样它就可以左右移动(在x轴上的两个点之间:图形当前的起点和歌曲结束时的终点),并与歌曲的channel.position相对应。总结一下:我想请一个善良的灵魂给我一个提示,我应该用什么代码使图形在x轴上以一种和歌曲的channel.position相对应的方式移动 这是我目前的代码: movieClip_1.stop(); var itsstoped:Boolean; var y

我正在创建简单的音乐播放器。它将只播放一首歌。我想创建一个非常简单的seekbar。我想要一个图形作为搜索组件-这样它就可以左右移动(在x轴上的两个点之间:图形当前的起点和歌曲结束时的终点),并与歌曲的channel.position相对应。总结一下:我想请一个善良的灵魂给我一个提示,我应该用什么代码使图形在x轴上以一种和歌曲的channel.position相对应的方式移动

这是我目前的代码:

movieClip_1.stop(); 
var itsstoped:Boolean; 
var youpausedit:Boolean; 
var counter:Timer = new Timer(100); 
var chan:SoundChannel; 
var song:Sound = new Sound();
song.load(new URLRequest("wmc2.mp3")); 
song.addEventListener(Event.COMPLETE, soundloaded);
function soundloaded(event:Event)
{
trace("Song has been loaded.");
} 
counter.addEventListener(TimerEvent.TIMER,countcounter);  
itsstoped = true; 
youpausedit = false;  
button_2.addEventListener(MouseEvent.CLICK, presser);
function presser(event:MouseEvent):void
{
if(itsstoped == true && youpausedit == true)
{
    movieClip_1.gotoAndPlay(1);
    chan = song.play(chan.position);
    itsstoped = false; 
} 
else if(itsstoped == false)
{
    movieClip_1.gotoAndStop(1);
    chan.stop();
    itsstoped = true;
    youpausedit = true;
}   
else if(itsstoped == true && youpausedit == false)
{
    movieClip_1.gotoAndPlay(1);
    chan = song.play();
    counter.start();
    itsstoped = false; 
} 
}  
function countcounter(e:TimerEvent):void
{
trace(chan.position/song.length);
var percentage:uint = 100 * (chan.position / song.length);
trace(percentage);
if(percentage == 100)
{   movieClip_1.gotoAndStop(1);
    itsstoped = true;
    youpausedit = false;
    }
}
忽略movieClip_1,因为它只是播放音乐时运行的动画。

类似的内容:

addEventListener(Event.ENTER_FRAME,onEFrame);

function onEFrame(e:Event):void
{
   graphic.x = graphicStartX + music.position/music.length*(graphicEndX-graphicStartX);
}

这行代码中存在的问题:

var chan:SoundChannel; 
我已将其更改为:

var chan = new SoundChannel();
错误#1009不再显示


万岁!:)

谢谢你的时间和回答。我会尝试一下,但是用户拖放操作的代码呢?我应该将该图形更改为按钮吗?我已经尝试了您的代码,它可以工作,但在输出窗口中给出了三个:TypeError:Error#1009:无法访问null对象引用的属性或方法。这是因为我的时间线只有一帧吗?我可以“监听”任何其他事件,而不是进入_帧,以避免出现此错误?另外,如果你能和我前面的问题联系起来,我将对此进行详细说明@斯拉普内尔