Comunidad de diseño web y desarrollo en internet online

Scrollbar en movimiento

Citar            
MensajeEscrito el 25 Oct 2006 01:16 pm
Muy buenas, ¿que pasó?

Tengo una duda a la que no le encuentro salida, tengo una animación basada en un scrollbar, lo que quiero conseguir es que ese scroll no sea estático, sino que se vaya moviendo progresivamente (derecha a izquierda) y poder actuar sobre él con el ratón para moverlo y que el scroll siga su movimiento después de alterarlo.
No se si queda muy claro, pero ese es mi problemilla. Muchas gracias y hasta pronto

Por nykopol

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 Oct 2006 03:12 pm
Vos querés que el scroll se mueva digamos, hacia la derecha; poder cambiarle la posición arrastrándolo con el mouse y que luego de soltarlo se siga moviendo solo????

Voy a suponer que sabés algo de AS.

Usás una variable booleana que indique si el scroll está siendo arrastrado o no.

Hacés las acciones del startDrag y stopDrag al presionar el clip. Junto a estas acciones, modificás la variable booleana para que sea true si la estamos arrastrando y false si no lo estamos haciendo.

Luego, hacemos una acción que solo se ejecuta si la variable es igual a false y que haga que el clip se mueva.


Listo. Así de simple.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 26 Oct 2006 09:20 am
Lo primero, muchas gracias por contestar tan rápido, eso es justo lo que quiero hacer.

No tengo mucha idea de AS para hacer el scroll me baje el código de un tutorial, a lo mejor es un trabajo muy complicado para alguien que no tiene mucha idea, pero lo necesito para el trabajo para una web que estoy haciendo. El código que me baje para el scroll es el siguiente:


onClipEvent(load){
var objetivo:String = _parent.mi_objetivo;//entre comillas aquí escribe
var sostenido:Boolean = false;
var razon:Number = this._parent._parent[objetivo]._height / this._height;
var deslizar:Number;
razon = int(razon);
}

on(press){
startDrag(this, false, this._parent.barra._x, this._parent.barra._y, this._parent.barra._x + this._parent.barra._width, this._parent.barra._y + this._parent.barra._height - this._height);
this.sostenido = true;
}

on(release){
stopDrag();
this.sostenido = false;
}

onClipEvent(mouseMove){
if(this.sostenido){
deslizar = (this._y - this._parent.barra._y);
deslizar = int(deslizar);
this._parent._parent[objetivo]._y = -(razon * deslizar) / 2;
}
}


Muchas gracias de antemano y saludos.

Por nykopol

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 26 Oct 2006 01:39 pm
Ese código que tenés es algo complicado y se halla en un MC, lo que no es del todo recomendable.

Lo que yo haría es darle al scroll un nombre de instancia "clip_mc".

Este código va en el root:

Código :

var arrastrando:Boolean = false;
var velocidad:Number = 2;
//
onMouseDown = function () {
if (clip_mc.hitTest (_xmouse, _ymouse, true)) {
arrastrando = true;
}
};
//
onMouseUp = function () {
arrastrando = false;
};
//
onMouseMove = function () {
if (arrastrando) {
clip_mc._x = _xmouse;
}
};
//
onEnterFrame = function () {
if (!arrastrando) {
mc._x += velocidad;
}
};

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.