Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rodrigo Moreti

Scroll bar Limitada AS3

Recommended Posts

Olá pessoal. Estou apanhando bastante com o AS3 no Flash CS6. Sou iniciante no assunto, mas estou conseguindo montar um site em flash aos trancos e barrancos. Baixei um template no flashmo e não estou conseguindo alterar o campo da barra de rolagem. Ela está limitada e preciso que ela desça bem mais, pois meu conteúdo extrapola o limite da área do scrollbar. Alguém poderia me ajudar, por favor?

 

Segue o código do scrollbar e o print da tela:

 

 

var sd:Number;

var sr:Number;

var cd:Number;

var cr:Number;

var new_y:Number;

var drag_area:Rectangle;

var flashmo_content:MovieClip;

var flashmo_content_area:MovieClip;

var scrolling_speed:Number; // 0.00 to 1.00

 

function scrolling( ct:String, ct_area:String, speed:Number ):void

{

scrolling_speed = speed;

if( scrolling_speed < 0 || scrolling_speed > 1 ) scrolling_speed = 0.50;

 

flashmo_content = parent[ct];

flashmo_content_area = parent[ct_area];

 

flashmo_content.mask = flashmo_content_area;

flashmo_content.x = flashmo_content_area.x;

flashmo_content.y = flashmo_content_area.y;

 

sr = flashmo_content_area.height / flashmo_content.height;

flashmo_scroller.height = flashmo_scrollable_area.height * sr;

 

sd = flashmo_scrollable_area.height - flashmo_scroller.height;

cd = flashmo_content.height - flashmo_content_area.height;

cr = cd / sd * 1.01;

 

drag_area = new Rectangle(0, 0, 0, flashmo_scrollable_area.height - flashmo_scroller.height);

 

if ( flashmo_content.height <= flashmo_content_area.height )

{

flashmo_scroller.visible = flashmo_scrollable_area.visible = false;

}

 

flashmo_scroller.addEventListener( MouseEvent.MOUSE_DOWN, scroller_drag );

flashmo_scroller.addEventListener( MouseEvent.MOUSE_UP, scroller_drop );

this.addEventListener( Event.ENTER_FRAME, on_scroll );

}

 

function scroller_drag( me:MouseEvent ):void

{

me.target.startDrag(false, drag_area);

stage.addEventListener(MouseEvent.MOUSE_UP, up);

}

 

function scroller_drop( me:MouseEvent ):void

{

me.target.stopDrag();

stage.removeEventListener(MouseEvent.MOUSE_UP, up);

}

 

function up( me:MouseEvent ):void

{

flashmo_scroller.stopDrag();

}

 

function on_scroll( e:Event ):void

{

new_y = flashmo_content_area.y + flashmo_scrollable_area.y * cr - flashmo_scroller.y * cr;

flashmo_content.y += ( new_y - flashmo_content.y ) * scrolling_speed;

}

 

print.jpg

 

 

Agradeço desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.