Comunidad de diseño web y desarrollo en internet online

Texto tipo news en un contenedor

Citar            
MensajeEscrito el 11 Ago 2011 03:49 pm
Hola quisiera realizar un contenedor (?) con un texto dentro, con el efecto que el texto se desplaze verticalmente hacia arriba, desaparezca y vuelva a aparecer por debajo. Les agradeceré si me orientan por favor. Gracias!

Por tdg_2005

68 de clabLevel



 

msie8
Citar            
MensajeEscrito el 11 Ago 2011 10:41 pm
Utilizando lenguaje ordinario: la idea sería que creases un campo de texto (clase TextField), al cual le puedes asignar un texto, una posición, etc. De esta manera, podrás modificar su posición vertical y hacer que, llegando hasta arriba, vuelva hacia debajo. Un pequeño ejemplo con código:

Código ActionScript :

// Importamos las clases necesarias
import flash.events.TimerEvent;
import flash.utils.Timer;

// Creamos el campo de texto
var miTexto:TextField = new TextField();
miTexto.text = "Hola, mundo!"; // texto de prueba
miTexto.x = 50 // o cualquier otro valor
miTexto.y = 210 // sería el valor inicial, la parte inferior del "contenedor"

// Añadimos el campo de texto a la lista de visualización
this.addChild(miTexto);

// Ahora creamos una función que se repetirá cada vez que se ejecute un evento del tipo TimerEvent
function moverTexto(e:TimerEvent):void {
   miTexto.y -= 10;
   if(miTexto.y < -10){
      miTexto.y = 210;
   }
}

// Creamos el cronómetro que ejecutará los eventos para llamar a la función
var cronometro:Timer = new Timer(100);

// Añadimos el escuchador para indicar qué función debe ejecutar
cronometro.addEventListener(TimerEvent.TIMER, moverTexto);

// Iniciamos el cronómetro
cronometro.start();


Si quisieras incluír el texto en un contenedor, podrías cambiar la linea:

Código ActionScript :

this.addChild(miTexto);

Por:

Código ActionScript :

contenedor.addChild(miTexto);


Eso sí, contenedor debe ser un MovieClip o cualquier otro tipo de DisplayObjectContainer.

Por nestorrente

1010 de clabLevel

10 tutoriales

 

Vigo

firefox
Citar            
MensajeEscrito el 11 Ago 2011 11:51 pm
Gracias por responder nestorrente, lo corrí en flash y funciona perfecto, ahora bien en flex no funciona. paso lo que hice, el error es 1042, el this no se puede usar en static mhetod.
Gracias!!!

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import flash.events.TimerEvent;
import flash.utils.Timer;
var miTexto:TextField = new TextField();
miTexto.text = "Hola, mundo!";
miTexto.x = 50;
miTexto.y = 210;
this.addChild(miTexto);
function moverTexto(e:TimerEvent):void {
miTexto.y -= 10;
if(miTexto.y < -10){
miTexto.y = 210;}}
var cronometro:Timer = new Timer(500);
cronometro.addEventListener(TimerEvent.TIMER, moverTexto);
cronometro.start();
]]>
</mx:Script>
</mx:Application>

Por tdg_2005

68 de clabLevel



 

msie
Citar            
MensajeEscrito el 13 Ago 2011 10:39 am
Mmm, prueba utilizando stage o root en lugar de this, a ver si sirve de algo.

De todos modos, nunca he utilizado Flex, así que no tengo ni idea de cómo funciona :S

Por nestorrente

1010 de clabLevel

10 tutoriales

 

Vigo

firefox

 

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