InicioInfoCaptura e imprecion de textos en AS3

Captura e imprecion de textos en AS3

Info11/30/2011

CAPTURA E IMPRECION DE TEXTOS




Bien en este ej. veremos como capturan textos de un inputText y mostrarlos en un nuevo frame, primero que nada vamos a crear el entorno grafico. En mi caso va a quedar algo asi:






Los rectangulos en blanco son campos de texto del tipo inputText al los que llamaremos nombre_txt, edad_txt, hoby_txt, el mc verde con la palbra send va a ser nuestro boton y lo llamaremos send_btn. Devanjo de los campos de inputText crear un Dynamic Text y nombrarlo "errText". Luego creamos otro frame al que simplemente le añadiremos un campo de texto del tipo Dynamic Text.




Luego creamos un nuevo archivo Action Script al que llamaremos Main y le pondremos el sigiente script el cual adjuntaremos con la pelicula

package{

import flash.display.*;
import flash.events.TextEvent;
import flash.events.*;
import flash.events.TimerEvent
import flash.utils.Timer
import flash.events.MouseEvent;
import flash.text.TextField;


public class Main extends MovieClip{

private var $nombre:String;
private var $edad:Number;
private var $hoby:String;
private var newText:String;

private var tiempo:Timer;

public function Main():void
{
stop();
tiempo=new Timer(1000,1)

send_btn.addEventListener(MouseEvent.CLICK,saveDat)
}


//Guardamos los Datos de los campos
private function saveDat(evento:MouseEvent):void
{
$nombre=nombre_txt.text;
$edad=Number(edad_txt.text);
$hoby=hoby_txt.text;
if ($nombre.length >=2 ){ //1er if

if ($edad >= 4 && $edad < 99){//2do if

if ($hoby.length > 3 ){//3er if

armaTexto();



}//3er if
else errText.text="intodusca un hoby valido"
}//2do if
else errText.text="intodusca una edad valida"
}//1er if
else errText.text="intodusca un nombre valido"
}




private function armaTexto():void
{
newText="Buenos dias "+$nombre+", veo que tienes "+$edad+" años."+
"que bueno que te guste "+$hoby
nextFrame();
tiempo.addEventListener(TimerEvent.TIMER,imprimeText)
tiempo.start();

}
private function imprimeText(evento:TimerEvent):void
{
if(this.currentFrame==2) {salidaTxt.text=newText}
tiempo.stop();
removeEventListener(TimerEvent.TIMER,imprimeText)
}

}//
//END PACK AND CLASS
}//

Ahora vamos a explicar un poco el codigo: En primer lugar delcaramos la variables a usar en nuetro caso seran

private var $nombre:String;// guardaremos lo que el usuario escribirá en el campo de nombre 
private var $edad:Number;// guardaremos lo que el usuario escribirá en el campo de edad 
private var $hoby:String;// guardaremos lo que el usuario escribirá en el campo de hobby 
private var newText:String;//esta variable servirá para crea un nuevo string con todos los datos 
private var tiempo:Timer;//Aquí crearemos un timer para la consulta 

public function Main():void//Creamos el contructor 
{
stop();//detenemos la pelicula 
tiempo=new Timer(1000,1)//delaramos tiempo como un timer de 1 seg que se repetira una sola //////////////////////////ves 

send_btn.addEventListener(MouseEvent.CLICK,saveDat)//creamos el listener para el boton send 
}

Ahora la function SaveDat:

private function saveDat(evento:MouseEvent):void
{
$nombre=nombre_txt.text;
$edad=Number(edad_txt.text);
$hoby=hoby_txt.text;
if ($nombre.length >=2 ){ //1er if

if ($edad >= 4 && $edad < 99){//2do if

if ($hoby.length > 3 ){//3er if

armaTexto();



}//3er if
else errText.text="intodusca un hoby valido"//
}//2do if
else errText.text="intodusca una edad valida"
}//1er if
else errText.text="intodusca un nombre valido"
}


primero que nada guardamos los datos en las variables correspondientes $nombre=nombre_txt.text; etc. A Continuación creamos una seria de condiciones para dar validez a los datos introducidos por ej: if ($edad >= 4 && $edad < 99) aqui decimos que para que edad sea corercto tiene que estar comprenidad entro 4 y 98 si el dato no esta dentro de esta comprencion mandaremos un mensaje de erro. Asi con todos los datos varia la condicion segun el dato .

Despues que validamos los datos si todos son correctos llamaremos a

armaTexto();


private function armaTexto():void
{
newText="Buenos dias "+$nombre+", veo que tienes "+$edad+" años."+
"que bueno que te guste "+$hoby
nextFrame();
tiempo.addEventListener(TimerEvent.TIMER,imprimeText)
tiempo.start();
}


Aquí simplemente concatenamos las variable para armar un texto el deseado(Usted puede usar las variables de otros modos) . Luego en la función imprimeText verificamos que estemos en el frame correcto si es as cargamos salidaTxt con los datos detenemos el timer y removemos el listener.

private function imprimeText(evento:TimerEvent):void
{
if(this.currentFrame==2) {salidaTxt.text=newText}
tiempo.stop();
removeEventListener(TimerEvent.TIMER,imprimeText)
}

Bien eso es todo. Saludos hasta la proxima Maxx



------------------------------------------------------------------------------------------------------------------------------------------------------------------
visita mis juegos en http://www.kongregate.com/games/MaxiSan20/find-my-flag
Datos archivados del Taringa! original
3puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
4visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

M
MaxiSan20🇦🇷
Usuario
Puntos0
Posts4
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.