2012-11-24 18 views
1

在這段代碼中,我需要一個進度條來通過導入的.swf文件播放時,同時我應該能夠拖動拖動器在進度條上(即拖動器的移動速率應與.swf文件播放速率同步)。我得到了參數錯誤:#2109在scene1中找不到frame標籤459.99。動作腳本3.0。我曾試過一個程序,應該移動拖動器以及內容動畫片段,

var loader:Loader = new Loader(); 
playBtn.visible = true; 

pauseBtn.visible = false; 
btn_00.addEventListener(MouseEvent.CLICK, fileLoaded); 
btn_01.addEventListener(MouseEvent.CLICK, fileLoaded); 
btn_02.addEventListener(MouseEvent.CLICK, fileLoaded); 
function fileLoaded(evt:MouseEvent):void 
{ 
    var fileName:String = evt.currentTarget.name; 
    var fileNumber:String = fileName.split("_")[1]; 
    var urlPath:String = "assets/file_" + fileNumber + ".swf"; 
    loader.load(new URLRequest(urlPath)); 
    addChild(loader); 
} 
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfLoaded); 
function swfLoaded(event:Event):void 
{ 
    addEventListener(Event.ENTER_FRAME, trackPlayback); 
} 
function trackPlayback(event:Event):void 
{ 
    var perPlayed:Number = MovieClip(loader.content).currentFrame/MovieClip(loader.content).totalFrames; 
    progressbar.drag.x = (progressbar.bar.width - progressbar.drag.width) * perPlayed; 
} 
progressbar.drag.buttonMode = true; 
var dragClicked:Boolean = false; 
var xpos:Number = progressbar.bar.x * progressbar.drag.width; 
progressbar.drag.addEventListener(MouseEvent.MOUSE_DOWN,dragMouseDown); 
function dragMouseDown(evt:MouseEvent):void 
{ 
    trace(" inside mouse down "); 
    dragClicked = true; 
    progressbar.drag.startDrag(false,new Rectangle(xpos,0,progressbar.width-progressbar.drag.width,0)); 
} 

progressbar.drag.addEventListener(MouseEvent.MOUSE_UP,dragMouseUp); 
function dragMouseUp(evt:MouseEvent):void 
{ 
    dragClicked = false; 
    progressbar.drag.stopDrag(); 
    var cnt:Number = (progressbar.drag.x/(progressbar.width-progressbar.drag.width))*MovieClip(loader.content).totalFrames; 
    MovieClip(loader.content).gotoAndPlay(cnt); 
    } 

請解決我的問題。

在此先感謝。

回答

0

要訪問特定的幀,您需要在當前使用浮點值的位置提供一個整數值。

一個簡單的解決將是投了Numberint

MovieClip(loader.content).gotoAndPlay(int(cnt)); 
相關問題