Foros del Web » Creando para Internet » Flash y Actionscript »

Como crear un scrollbar para texto dinamico

Estas en el tema de Como crear un scrollbar para texto dinamico en el foro de Flash y Actionscript en Foros del Web. He conseguido insertar un archivo txt en flash con la funcion loadvars. Funciona correctamente pero a la hora de crear el scroll solo encuentro ejemplos ...
  #1 (permalink)  
Antiguo 23/11/2004, 02:54
 
Fecha de Ingreso: noviembre-2004
Mensajes: 3
Antigüedad: 20 años
Puntos: 0
Como crear un scrollbar para texto dinamico

He conseguido insertar un archivo txt en flash con la funcion loadvars. Funciona correctamente pero a la hora de crear el scroll solo encuentro ejemplos utilizando el componente predifinido de flash.
Necesito saber si existe la posibilidad de crear un propio scrollbar y como hacerlo. Me urge muchisimo pues es para entregar un trabajo para el viernes.
Muchisimas gracias y disculpad las molestias.
  #2 (permalink)  
Antiguo 23/11/2004, 10:02
Avatar de TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 22 años, 10 meses
Puntos: 193
Bueno el Componente de Flash es muy util en este caso.. si no lo quieres usar entonces tienes que crear el tuyo...

Ahora la pregunta es tienes los suficientes conocimientos para crearlo?
  #3 (permalink)  
Antiguo 24/11/2004, 02:18
 
Fecha de Ingreso: noviembre-2004
Mensajes: 3
Antigüedad: 20 años
Puntos: 0
Por mis conocimientos no te preocupes que somos varios y estamos aprendiendo.
Tu explicamelo mas o menos y ya nos buskamos aki la vida.
Gracias
  #4 (permalink)  
Antiguo 24/11/2004, 21:49
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 21 años, 4 meses
Puntos: 406
Hola zaok:
Está sería una de las tantas formas de hacer el scroll.
Crea tus dos botones y lo colocas dentro de un MC en la capa 1 frame 1, crea otra capa y en el frame 1 coloca este código:
if (aum) {
_parent.texto.scroll -= 3;
}
if (dis) {
_parent.texto.scroll += 3;
}
En lo botones que están en el frame 1:
selecciona el botón que va ha servir para que suba el texto y le pones este código:
on (rollOver) {
dis = 1;
}
on (rollOut) {
dis = 0;
}
y al botón que baja el texto este:
on (rollOver) {
aum = 1;
}
on (rollOut) {
aum = 0;
}
después de ponerle los códigos aumentas un fotograma clave a la capa donde están lo botones.
En el código que puse en la capa 1 frame 1 usé la variable "texto", allí puedes poner la variable que estás usando.

Espero haberte sido de ayuda y esté clara la explicación.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #5 (permalink)  
Antiguo 22/11/2008, 20:47
 
Fecha de Ingreso: noviembre-2008
Mensajes: 62
Antigüedad: 16 años
Puntos: 0
Respuesta: Como crear un scrollbar para texto dinamico

Gracias Bandit, me fue muy úitl y es justo lo que quería. Aunque me han faltado algunos detalles pequeños que he tenido que ir sacando de la ayuda de Flash, y el código de los botones eran al revés. Inserto aquí todos los pasos con mis añadidos, por si pueden ser útiles a otros, en base a lo tuyo:

Botones de Desplazamiento

Crear dos botones por separado (con forma de Flecha, por ejemplo) + los insertamos en un Clip de Película, en su Capa 1 y Frame 1 + Crear otra capa en este Clip + insertar este código en el Frame 1, en ACCIONES (panel abajo):



if (aum) {

_parent.texto.scroll -= 3;

}

if (dis) {

_parent.texto.scroll += 3;

}

En esta Escena de Clip de botones, seleccionar el botón para que suba el texto + insertar en ACCIONES código:

on (rollOver) {

aum = 1;

}
on (rollOut) {

aum = 0;

}


Seleccionar el botón para bajar en el texto, y en ACCIONES, código:



on (rollOver) {

dis = 1;

}

on (rollOut) {

dis = 0;

}

+ después de ponerle los códigos, aumentas un fotograma Clave a la capa donde están los botones (en Clip de Película) + Vas a Escena principal y arrastras al lienzo el Clip con los botones (el CLIP, no los botones por separado) + en Escena principal también, creamos texto Dinámico + bautizarlo con la instancia “texto” (en este ejemplo) en PROPIEDADES + en panel PROPIEDADES también, en desplegable, seleccionar MULTILÍNEA (para vertical) o MULTILÍNEA SIN AJUSTE (éste último para barra horizontal) [normalmente pone Línea Única por defecto] + ver que está activado: VER + AJUSTE + AJUSTAR OBJETOS + Insertar texto dentro del cuadro de texto (este debe ocupar más de largo que el recuadro, para que se desplace) + Para que al añadir texto no se vaya agrandando la altura del cuadro de texto, activar lo siguiente, en el menú general de arriba: TEXTO + DESPLAZAMIENTO PERMITIDO

También añado apuntes para Barra de Desplazamiento predeterminada ScrollBar


Barra de Desplazamiento (con UI ScrollBar)

1. Cree un campo de texto dinámico y asígnele el nombre de instancia myText en el inspector de propiedades.

2. En el inspector de propiedades, establezca el Tipo de línea del campo de introducción de texto en Multilínea o en ‘Multilínea sin ajuste’ si tiene previsto utilizar la barra de desplazamiento horizontalmente.

3. Añada texto suficiente al cuadro, de forma que los usuarios deban desplazarse para poder verlo en su totalidad. Para que al añadir texto no se vaya agrandando la altura del cuadro de texto, activar lo siguiente, en el menú general de arriba: TEXTO + DESPLAZAMIENTO PERMITIDO


NOTA: Asegúrese de que el cuadro de texto en el escenario es lo suficientemente pequeño como para tener que desplazarse por él para poder ver todo el texto. Si no lo es, la barra de desplazamiento no aparece o puede aparecer simplemente como dos líneas sin control deslizador, que es la parte que se arrastra para desplazarse por el contenido.


4. Compruebe que está activado el ajuste a objetos (Ver > Ajustar > Ajustar a objetos).


5. VENTANA + COMPONENTES + en ventana emergente, USER INTERFACE (desplegable) + UIScrollBar + arrastrarla al lado del cuadro de introducción de texto, junto al borde donde desea asociarlo. El componente debe solaparse con el cuadro de texto al soltar el ratón, para que quede correctamente vinculado al cuadro.

Última edición por sonodiman; 22/11/2008 a las 20:52
  #6 (permalink)  
Antiguo 26/11/2008, 19:16
 
Fecha de Ingreso: noviembre-2008
Mensajes: 62
Antigüedad: 16 años
Puntos: 0
Respuesta: Como crear un scrollbar para texto dinamico

Barra de Desplazamiento personalizada

Si lo que queréis es crear una barra de desplazamiento personalizada, y no la predeterminada de Flash, un buen tutorial es el siguiente:

http://www.solophotoshop.com/Tutorial-Editar-Scroll-Flash-c-236.html

Sin embargo, tiene algunos errores a rectificar:

1- Cuando escribáis el código:
gotoAndPlay(“scroll_logic”);

En el panel ACCIONES de Flash tenéis que borrar las comillas y volverlas a escribir, para que os queden rectas.

2- Cuando escribáis la instancia llamada ‘logia’, ésta es realmente ‘logia’ (y NO ‘logic’, como se muestra en la foto de muestra).

3- Ignorad el siguiente paso, porque le falta código y genera problemas:

“El siguiente paso es insertar un segundo Fotograma clave vacío en este mismo clip de película (acciones_scroll) (la ruta ya la sabe presionar F7), seleccionar dicho fotograma y en Etiqueta de fotograma poner el nombre de scroll_logic y en el panel Acciones_Fotograma escribir el siguiente código.
eval(target) .¬_y =
clip_top-(((_root.scroll_shape._y-top)/bar_length)*clip_height); “

De esta manera, os acabarán quedando sólo dos fotogramas, en el Clip ‘acciones_scroll’. Para compensar el paso eludido, id a escena principal, cuando acabéis todos los pasos del turorial, seleccionad el Clip ‘scroll_escena’ (cuya instancia será ‘scroll_shape’), y en su panel ACCIONES, escribid el siguiente código:

onClipEvent (load) { var_mc = _parent.button_list; target = var_mc; bar_length = _parent.scroll_bar._height-this._height-10; top = this._y; bottom = this._y+bar_length; clip_top = var_mc._y; clip_height = var_mc._height-_parent.scroll_bar._height-this._height+100; } on(press) { this.startDrag(false, this._x, top, this._x, bottom); this.onEnterFrame=function(){ this["target"]._y=clip_top-(((this._y-top)/bar_length)*clip_height); } } on (release, releaseOutside) { this.stopDrag(); delete this.onEnterFrame; }
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 23:10.