Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
seguinte galera, to usando um scroll aqui que funciona certinho, mas agora to tentando colocar um conteudo dinamico dentro dele, ou seja, e' uma menu dinamico que puxo as informacoes do php para gera-lo, mas pelo que entendi esse codigo do scroll pega o tamanho do mc na hora de gerar o swf, sendo assim, o meu mc estara vazio e quando executo o arquivo e gero o menu, o scroll nao funfa. deem uma olhada no codigo do scroll, aguem me ajude ai por favor!
/*Class MDScroll - by Maxwell Dayvson (www.dayvson.com)bugs/reports - dayvson@gmail.comconstructor: new MDScroll(MovieClip_Rolagem,Conteudo,mask);methods init init(true) --> Para usar scroll com TextField usage: var scrollMc = new MDScroll(rMovie,conteudo_mc,mask); scrollMc.init(); //------- OU ------- var scrollTxt = new MDScroll(rTxt,c_txt,null); scrollTxt.init(true);*/import mx.effects.Tween;dynamic class MDScroll{ private var _container:MovieClip; private var _mask:MovieClip; private var _scroll:MovieClip; private var _max:Number; private var _yini:Number; private var _type:Boolean; function MDScroll(rolagem,container,mascara) { _container = container; _mask = mascara; _scroll = rolagem; _scroll.drag_mc.useHandCursor = _scroll.fundo_mc.useHandCursor = false; }; public function init(txt:Boolean):Void { if(txt)setScrollTextField(); else setScrollMovieClip(); _type = txt; createChild(); }; private function setScrollMovieClip():Void { var area:Number = (_mask._height / _container._height) * 100; _max = Math.round(_container.maxscroll-_mask._height); _yini = _container.maxscroll; _scroll.drag_mc._y = 0; animate(Math.max(15,Math.min(100,area))); }; private function setScrollTextField():Void { _container.scroll = 0; _max = _container.maxscroll; var total = _container.bottomScroll - (_container.scroll - 1); animate(Math.max(15, Math.min(100, total / (total+_max) * 100))); if (_max <= 1) _scroll.drag_mc._y = 0,_scroll.drag_mc._yscale = 100; delete total; }; private function createChild():Void { _scroll.desce.onPress = downPress; _scroll.desce.onRelease = _scroll.desce.onReleaseOutside = _scroll.sobe.onRelease = _scroll.sobe.onReleaseOutside = arrowRelease; _scroll.sobe.onPress = upPress; _scroll.drag_mc.classObj = this; _scroll.drag_mc.movePosition = movePosition; _scroll.drag_mc.onPress = dragPress; _scroll.drag_mc.onRelease = _scroll.drag_mc.onReleaseOutside = dragRelease; _scroll.fundo_mc.onRelease = fundoRelease; }; private function upPress():Void { var sc:MovieClip = this._parent; this._interval = setInterval( function(){ sc.drag_mc._y = Math.max(0, sc.drag_mc._y - 10); sc.drag_mc.movePosition(); },50); }; private function downPress():Void { var sc:MovieClip = this._parent; this._interval = setInterval( function(){ sc.drag_mc._y = Math.min(sc.fundo_mc._height - sc.drag_mc._height, sc.drag_mc._y + 10); sc.drag_mc.movePosition(); },50); }; private function arrowRelease():Void { clearInterval(this._interval); }; private function dragPress():Void { this.startDrag(false, 0, 0, 0, this._parent.fundo_mc._height - this._height); this.onMouseMove = this.movePosition; }; private function dragRelease():Void { delete this.onMouseMove; this.stopDrag(); }; private function fundoRelease():Void { this._parent.drag_mc._y = Math.max(0, Math.min(this._height - this._parent.drag_mc._height, (this._ymouse - (this._parent.drag_mc._height/2)))); this._parent.drag_mc.movePosition(); }; private function movePosition():Void { if(this.classObj._type)this.classObj._container.scroll = this.classObj.updatePosition()+1; else this.classObj._container._y = this.classObj._yini - this.classObj.updatePosition(); updateAfterEvent(); }; private function updatePosition():Number { return Math.round(_scroll.drag_mc._y / (_scroll.fundo_mc._height - _scroll.drag_mc._height) * _max); }; private function animate(value:Number):Void { var lis:MovieClip = _scroll.drag_mc; var _tween:Tween = new Tween(lis,lis._yscale,value,650); lis.onTweenUpdate = lis.onTweenEnd = function(v:Number):Void { this._yscale = Math.round(v); }; };};Carregando comentários...