Comunidad de diseño web y desarrollo en internet online

.scroll-- dejandolo pulsado el raton???

Citar            
MensajeEscrito el 30 Oct 2007 01:44 pm
hola, me gustaria saber si se puede hacer lo siguiente.
tengo un cuadro de texto dinamico, con un texto largo, he hecho un par de botones con estas simples sentencias:
boton 1:

Código :

on(press){
   micajadetexto.scroll++;
}

boton 2:

Código :

on(press){
   micajadetexto.scroll--;
}


pues bien me gustaria saber si se puede conseguir que suceda lo que hacen estos botones usando el evento scroll (que es mu facilejo) pero dejando el el boton del raton pulsado, ya que de esta forma el texto hace scroll, pero un poquejo con cada click.

gracias y un saludo.
^^

Por pericles

71 de clabLevel



Genero:Masculino  

in Dublin

firefox
Citar            
MensajeEscrito el 30 Oct 2007 07:45 pm
Busca en la Ayuda de Flash acerca de setInterval(). Puedes crear una función y llamarla cada cierto tiempo con setInterval

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 30 Oct 2007 10:27 pm
ok le echare un ojo, gracias :meditar:

Por pericles

71 de clabLevel



Genero:Masculino  

in Dublin

firefox
Citar            
MensajeEscrito el 31 Oct 2007 01:44 pm
bueno, siguiendo tu consejo e hecho lo siguiente:
en el boton:

on(press){
intervalId=setInterval (this,"rellamada",100);
}
on(release){
clearInterval(intervalId);
}

en un fotograma:

rellamada=function(){
pacotxt.scroll--;
}


asi que si a alguien le sive de ayuda aqui deja esto que funciona de pm.
pd: haced lo mismo en otro boton pero con scroll++, que sino esto solo va pa un lao, :lol:

Un saludo.

Por pericles

71 de clabLevel



Genero:Masculino  

in Dublin

firefox
Citar            
MensajeEscrito el 31 Oct 2007 01:47 pm
mil perdones, asi si funciona.

Código :

on(press){
   intervalId=setInterval (this,"rellamada",100);
   rellamada();
   
}
on(release){
   clearInterval(intervalId);
}


esto en el boton, que se me habia olvidao poner la llamada a la funcion.

Por pericles

71 de clabLevel



Genero:Masculino  

in Dublin

firefox
Citar            
MensajeEscrito el 31 Oct 2007 07:33 pm
También pueden hacer dos clips de película, y le poner los siguientes códigos a cada uno:

Boton arriba

Código :

onClipEvent(mouseDown){
   if(hitTest(_root._xmouse,_root._ymouse,true)){
   with(_root.barra){
      flecha = "arriba";
      }
   }
}
onClipEvent(mouseUp){
   with(_root.barra){
      flecha = "";
      }
}

boton abajo

Código :

onClipEvent(mouseDown){
   if(hitTest(_root._xmouse,_root._ymouse,true)){
   tellTarget(_root.barra){
      flecha = "abajo";
      }
   }
}
onClipEvent(mouseUp){
   tellTarget(_root.barra){
      flecha = "";
      }
}


luego esos dos clips los meten en un clip contenedor que tendrá el siguiente código:

Código :

onClipEvent(enterFrame){
   if(flecha=="arriba"){
      _parent.caja.scroll-=1;
   }
   if(flecha=="abajo"){
      _parent.caja.scroll+=1;
   }
}


“caja” es la variable del texto dinámico

Por CarlosRuminott

1000 de clabLevel

6 tutoriales

 

Mdz, Arg

msie7
Citar            
MensajeEscrito el 31 Oct 2007 09:23 pm

  1. "tellTarget" está desfasado desde AS2.
  2. La solución me parece que es innecesariamente compleja.
  3. La velocidad del scroll dependerá directamente de la velocidad de fotogramas.

Si es por ponernos a echar código, yo haría algo así:

Código :

//Una variable para guardar el ID del setInteval.
var intervalID:Number = 0;

//La función que hará el scroll hacia arriba o hacia abajo:
function scrollIt(scrollWhat_txt, scrollUp:Boolean){
    if(scrollUp){ //Vamos a hacer que el texto suba.
         scrollWhat_txt.scroll ++;
    }else{ //Sino, hacemos que baje.
         scrollWhat_txt.scroll --;
   }
}


Luego, en las flechas llamamos con set interval (Digamos que tenemos un botón llamado "sube_btn" y otro "baja_btn")

Código :

sube_btn.onRollOver = baja_btn.onRollOver = function(){
     intervalID = setInterval(scrollIt, 1000, this._name == "sube_btn");
}
sube_btn.onRollOut = baja_btn.onrollOut = function(){clearInterval(intervalID);

Está hecho al vuelo, pero más o menos es la idea.

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 31 Oct 2007 09:48 pm
Si en un lado esta puesto con with y en otro con tellTarget :lol:
y la verdad que es mucho codigo, pero bueno, es lo que se hacer...

Por CarlosRuminott

1000 de clabLevel

6 tutoriales

 

Mdz, Arg

msie7

 

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