Hi,
just use ADDED_TO_STAGE event:
Code:import caurina.transitions.Tweener; var odd:int; var bar:Bar=new Bar(); var drag:Drag=new Drag(); var startY:Number; addEventListener(Event.ADDED_TO_STAGE,callCreateScrollBar); function createScrollBar() { addChild(bar); addChild(drag); bar.x=container_thumbs_mc.x+container_thumbs_mc.width+12; bar.y=container_thumbs_mc.y-5; bar.alpha=1; drag.x=bar.x-drag.width/2+bar.width/2; drag.y=bar.y; drag.mouseChildren=false; drag.buttonMode=true; drag.addEventListener(MouseEvent.MOUSE_DOWN,scrollBarDown); drag.addEventListener(MouseEvent.MOUSE_UP,scrollBarUp); stage.addEventListener(MouseEvent.MOUSE_UP,stageUp); } function scrollBarDown(evt:MouseEvent):void { Tweener.addTween(drag.bg_mc,{_color:0x000000,time:.4,transition:"easeOutCubic"}); odd=evt.target.height-bar.height; startY=scroll_mask_mc.y; var rect:Rectangle=new Rectangle(bar.x-evt.target.width/2+bar.width/2+0.5,bar.y,0,bar.height-evt.target.height); evt.target.startDrag(false,rect); evt.target.addEventListener(Event.ENTER_FRAME,goScroll); } function scrollBarUp(evt:MouseEvent):void { Tweener.addTween(drag.bg_mc,{_color:0x000000,time:.4,transition:"easeOutCubic"}); evt.target.stopDrag(); evt.target.removeEventListener(Event.ENTER_FRAME,goScroll); } function stageUp(evt:MouseEvent):void { Tweener.addTween(drag.bg_mc,{_color:0x000000,time:.4,transition:"easeOutCubic"}); bar.stopDrag(); bar.removeEventListener(Event.ENTER_FRAME,goScroll);} function goScroll(evt:Event):void { var distance:Number=evt.target.y-bar.y; var percent:Number=Math.ceil((distance/odd)*100); var movement:Number=startY-(percent/100)*(scroll_mask_mc.height-container_thumbs_mc.height); Tweener.addTween(container_thumbs_mc,{y:movement,time:.2,transition:"linear"}); } function callCreateScrollBar(evt:Event):void { createScrollBar(); }




LinkBack URL
About LinkBacks

Reply With Quote


Bookmarks