Habiendo observado que había una gran cantidad de post preguntando cómo llenar un cuadro de texto letra a letra, se me ocurrió crear una función para realizar esa misma tarea.
La función permite crear aplicaciones simples como ésta (el botón escribir escribe el texto que aparece en el campo, además, este campo se vuelve editable cuando la función termina de escribir):
La función que logra esto (Código abajo) tiene 5 parámetros que, en orden son:
- texto: El texto a escribir debe ser un String (si, se pueden usar variables y la constante newline)
- campo: El campo de texto en el que se va a escribir (es decir, el nombre de instancia)
- intervalo: Los milisegundos que pasan entre cada carácter escrito.
- primeraLetra: Una variable booleana que indica si la primera letra es escrita en seguida o si debe esperar.
- formato:[/b] El formato que se le quiere aplicar al texto en caso de querer hacerlo en forma dinámica.
Explico el cuarto parámetro, si el tiempo entre letra y letra es de 1000 milisegundos y primeraLetra es false, entonces, habrá que esperar 1 segundo antes de que la primera letra aparezca; si es true, aparece al ejecutarse la función.
Si no me explico bien, prueben usar la función y cambiar el valor de primeraLetra con un intervalo elevado (1000 o más milisegundos).
Es muy importante saber que la función define una variable para el campo de texto sobre el que etá escribiendo que es, justamente, escribiendo. Ésta variable debería ser usada para determinar si estamos escribiendo en ese campo de texto en particular ya que la función falla si tratamos de usarla 2 veces en el mismo campo al mismo tiempo.
Ahora, el código de la función:
Código :
escribir = function (texto:String, campo:TextField, intervalo:Number, primeraLetra:Boolean, formato:TextFormat) { // // Creamos el Array a partir del texto campo.arrayLetras = texto.split(""); campo.escribiendo = true; // // Creamos la función que pone las letras una por una nuevaLetra = function () { if (campo.letra == undefined) { campo.i = 0; } else { campo.i++; } if (campo.i == campo.arrayLetras.length) { clearInterval(campo.nuevoIntervalo); campo.letra = undefined; campo.escribiendo = false; } else { if (campo.arrayLetras[campo.i] == " ") { campo.i++; campo.letra = " "+campo.arrayLetras[campo.i]; } else { campo.letra = campo.arrayLetras[campo.i]; } campo.text += campo.letra; campo.setTextFormat(formato); } }; if (primeraLetra) { nuevaLetra(); } // // Creamos el intervalo que llama a la función "nuevaLetra" campo.nuevoIntervalo = setInterval(nuevaLetra, intervalo); };
Por ejemplo, con el siguiente código, llamamos a la función para 2 campos de texto, campoTexto1 y campoTexto2:
Código :
var miTexto:String = "Función creada por Hernán Rivas \n [email protected]"; escribir(miTexto, campoTexto1, 30, false); var miOtroTexto:String = "El anterior es un ejemplo de multilinea"; escribir(miOtroTexto, campoTexto2, 60, false);
Espero les sea útil
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por Suriv el 20 de Febrero de 2007
Por Bleend el 20 de Febrero de 2007
Por Lunatrece el 20 de Febrero de 2007
Gracias.
Por jomajudo el 20 de Febrero de 2007
Por Luis el 20 de Febrero de 2007
Por HernanRivas el 20 de Febrero de 2007
Lunatrece_blog :
Código :
se agrega esa letra al campo de texto.Por n/n el 20 de Febrero de 2007
Por cgomez el 21 de Febrero de 2007
gracias
Por Comet! el 21 de Febrero de 2007
campoTexto1.autoSize=true;
Aunque hace un pequeño salto al cambiar de línea
Por Zguillez el 21 de Febrero de 2007
Por Acreonte el 21 de Febrero de 2007
hay algo en el codigo que hace que mi maquina se tarde en procesarlo.
A alguien mas le pasa?
Por HernanRivas el 21 de Febrero de 2007
cgomez_blog :
gracias
Por Runnerk el 21 de Febrero de 2007
Por cgomez el 22 de Febrero de 2007
Por G Creator el 23 de Febrero de 2007
Gracias
Por torrealbaruben el 28 de Febrero de 2007
Por HernanRivas el 01 de Marzo de 2007
Por jennifer el 28 de Marzo de 2007
Por HernanRivas el 29 de Marzo de 2007
Esto no está hecho en Pascal, está hecho en un código que ni siquiera se le parece en la estructura.
Por bicho_O el 29 de Marzo de 2007
Por Joparoto el 26 de Abril de 2007
Por HernanRivas el 28 de Abril de 2007
Por mariela el 29 de Abril de 2007
Por anonimo el 07 de Mayo de 2007
Por erotuni el 10 de Mayo de 2007
Por One el 10 de Mayo de 2007
Por diana y morena el 14 de Mayo de 2007
Por Letra A el 23 de Mayo de 2007
Por nano el psicologo in el 24 de Mayo de 2007
Por t el 04 de Julio de 2007
Por HernanRivas el 04 de Julio de 2007
Por la chica solo el 29 de Julio de 2007
Por bleis cuatro el 19 de Noviembre de 2007
Por facundo el 28 de Noviembre de 2007
por ejemplo
if(n=E)
el n es un codigo que puede ser E o D
se puede hacer eso?
Por anna el 29 de Noviembre de 2007
Por flashreloco el 30 de Noviembre de 2007
Por gatita el 10 de Diciembre de 2007
FELIZ NAVIDAD A TODOS!!!!!!!!!!!!!!!!!!!
Por jc_kiu el 19 de Enero de 2008
Por zaan el 21 de Enero de 2008
Por mus el 17 de Abril de 2008
textFormat = new TextFormat();
textFormat.bold = true;
textFormat.size = 50;
textFormat.color = 0xFF0000;
y en la llamada
escribir (miTexto, campoTexto, 30, textFormat);
pero no me funciona
Por paulina rubio el 14 de Mayo de 2008
Por pako el 09 de Junio de 2008
Por roy alex aldo el 24 de Julio de 2008
habla bien.NO ESCRIBAS TODO EN MAYUSCULA ,no escribas como en SMS,evita cosas como
Por fepaaaaaa!!!!!! el 21 de Octubre de 2008
Por la toto!!!!!!!!!!!!! el 13 de Noviembre de 2008
Por z@ira!!!24 el 13 de Noviembre de 2008
Por lucas el 15 de Noviembre de 2008
Por laura bellido sed el 20 de Noviembre de 2008
Por leidy viviana palaci el 25 de Noviembre de 2008
Por anto el 01 de Diciembre de 2008
Por JENY-LOVE el 25 de Diciembre de 2008
Por AAAAAAAAAAAAA el 31 de Diciembre de 2008
Por [email protected] el 22 de Enero de 2009
<º))))><.....,,
bye kisses se cuidan bye
Por ana laura muller el 25 de Enero de 2009
Por perla el 02 de Febrero de 2009
Por nestorrente el 16 de Junio de 2009
Por elena el 22 de Julio de 2009
facil de instalar un dispositivo panel de control,
GRAFICADOR DE WINDOWS
aplicacion nos permite realizar los diferentes dibujos, los cuales puedenser retocados y realizar un montaje de formas simple pero con muy baja calidad de resolucion la cualidad de esta aplicacion es que el usuario para trabajar con los colores que pueda proyectar windows.
ELEMENTOS DE LA VENTANA DE PAINT
1.barra de titulo
2.cuadro de control
3.menu de control
4.barra de menu
5.barra de herramientas
6.cuadro de colores
7.barra de desplazamiento horizontal y vertical.
EL SCANDISK
esta herramienta permite corregir errores fisicos que se encuentran en las unidades de discos.DISCOS FLEXIBLES DISCOS DUROS ETC.
DESFRAGMENTADOR
en cada cierto periodo a las unidades de disco ya sean discos flexibles o disco s duros es recomendable utilizar el desfracmentador,ya que con esta herramienta se lograra que los archivos esten de manera ordenador,permitiendo de esta forma la lectura mas rapida de los archivos.
PASOS PARA FORMATEAR UN DISQUETTE
son los sgtes
1.en las unidades que aparece en la parte izquierda de la ventana del explorador de windows seleccionar la unidad a formatear.
2.una vez seleccionamos la opcion formatear.
2.una vez seleccionado hacemos un clip derecho y en el menu contextual seleccionamos la opcion formatear.
3.presionar el boton iniciar,en caso contrrio si uno desea formato rapido hacer un check en la opcion formato rapido y luego precionar el boton inicial.