Comunidad de diseño web y desarrollo en internet online

Filtrar texto en TextFields AS3

Citar            
MensajeEscrito el 11 Dic 2012 07:10 am
Hola, basicamente tengo dos dudas. Verán, tengo dos TextFields, en uno se escribe y en otro se muestra lo que se escribe, es algo así como tipo Chat.
El usuario puede escoger el tipo de color con el que escribe el texto, ésto lo estoy haciendo con htmlText (me parece muy practico para lo que necesito)... todo funciona genial. Pero mis inconvenientes son:

1) Necesito que el usuario a través de botones o CheckBox pueda elegir que textos visualizar, es decir, por ejemplo, ha escrito textos en azul y otros en verde, pero ahora solo quiere visualizar los textos escritos en azul, entonces seleccione un botón que oculte los textos verdes como si nunca se hubieran escrito y autoajuste los textos visibles. Y si volviese a activar el botón, vuelva a mostrarsen tal cual estaban. (estoy seguro que no es tan complicado, pero he dado vueltas y no encuentro solucion :( )

2) Dado que el TextField donde se introduce el texto lo agrega al otro como HTML, quisiera impedir al usuario escribir en HTML, quiero que solo escriba sus mesajes comúnmente y no pueda editarlos.
Probé haciendo un .restrict() para que no usen los simbolos "<" y ">" pero es algo engorroso y hay personas que los necesitarán usar en algún momento.

¿Como puedo lograr estas dos cosas? Por favor!
Muchas gracias de antemano.

Por sebasxs

7 de clabLevel



 

chrome
Citar            
MensajeEscrito el 11 Dic 2012 04:55 pm
Hola, para la parte de poder filtrar el texto según el color, lo que puede hacer es tener un Array de 2 dimensiones, en el que guardas datos tal como así:

Código ActionScript :

var messagesArray:Arra = new Array();
messagesArray[0][0] = "azul";
messagesArray[0][1] = "mensaje mandado en azul";
messagesArray[1][0] = "verde";
messagesArray[1][1] = "mensaje mandado en verde";

Y cada vez que envias un mensaje lo guardas en tu textarea y lo añades a la última posición del array, donde la primera casilla es el color del texto y la segunda el mensaje mandado. Así cuando haces cualquier filtro, limpiar todo tu textarea y lo vuelves a llenar con el contenido del array segun la condición que deseas.
Me explico?

En lo referente a tu segunda pregunta, cuando recibas el mensaje, lo que tienes que hacer es recorrer todo el texto y eliminar los caracteres que no te interesen. Quizás puedas usar lo siguiente:

Código ActionScript :

var myPattern1:RegExp = />/gi;
var myPattern2:RegExp = /</gi;
mensajeRecibido = mensajeRecibido.replace(myPattern1, "").replace(myPattern2, "");

Espero que te sirva

Por Palacio

Claber

198 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Dic 2012 05:48 pm
Muchisimas gracias Palacio! es muy buena tu idea, lo intentaré, es justo lo que necesitaba :D

Por sebasxs

7 de clabLevel



 

chrome

 

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