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

¿Como elimino los espacios en blanco de un TextField?

Estas en el tema de ¿Como elimino los espacios en blanco de un TextField? en el foro de Flash y Actionscript en Foros del Web. Saludos: Tengo Flash MX (casi lloro cuando veo que era propiedad de Macromedia ). Resulta que necesito eliminar los espacios en blanco de derecha e ...
  #1 (permalink)  
Antiguo 09/08/2006, 01:57
Avatar de goc00  
Fecha de Ingreso: enero-2002
Ubicación: 000's DiMensiOn
Mensajes: 979
Antigüedad: 15 años, 11 meses
Puntos: 3
¿Como elimino los espacios en blanco de un TextField?

Saludos:

Tengo Flash MX (casi lloro cuando veo que era propiedad de Macromedia ). Resulta que necesito eliminar los espacios en blanco de derecha e izquierda de un campo de texto, puesto que así me aseguro que algún usuario "poco cuidadoso" aprete la barra espaciadora y como sabemos, un espacio es blanco es considerado como carácter. En otros lenguajes que conozco esto es extremadamente fácil, utilizando la función o método trim(), pero Flash MX no la tiene implementada . ¿Conocen algún truco para "imitar" el trim() de otros lenguajes?.
__________________
GOC00 CominG soOn v2.0
CyA! & GooD LuCK...
  #2 (permalink)  
Antiguo 09/08/2006, 02:39
Avatar de DarkskullDA  
Fecha de Ingreso: julio-2006
Mensajes: 698
Antigüedad: 11 años, 5 meses
Puntos: 13
intenta enviando las variables a un archivo php, y en el archivo php (q me imagino es el q usas ya q ahi esta la propiedad trim), limpias los espacion con el trim xD


^^
  #3 (permalink)  
Antiguo 09/08/2006, 03:28
 
Fecha de Ingreso: enero-2005
Ubicación: culiacan, sinaloa, mexico
Mensajes: 97
Antigüedad: 12 años, 11 meses
Puntos: 0
pues checa este codigo solo ponlo en el primer frame
dentro del codigo checa "condenseWhite" ojala sea lo ke andabas buscando


var my_str:String = "Hello\tWorld\nHow are you?\t\t\tEnd";
this.createTextField("first_txt", this.getNextHighestDepth(), 10, 10, 160, 120);
first_txt.html = true;
first_txt.multiline = true;
first_txt.wordWrap = true;
first_txt.condenseWhite = false;
first_txt.border = true;
first_txt.htmlText = my_str;
this.createTextField("second_txt", this.getNextHighestDepth(), 180, 10, 160, 120);
second_txt.html = true;
second_txt.multiline = true;
second_txt.wordWrap = true;
second_txt.condenseWhite = true;
second_txt.border = true;
second_txt.htmlText = my_str;
  #4 (permalink)  
Antiguo 09/08/2006, 09:42
Avatar de goc00  
Fecha de Ingreso: enero-2002
Ubicación: 000's DiMensiOn
Mensajes: 979
Antigüedad: 15 años, 11 meses
Puntos: 3
Saludos:

Investigando más exhaustivamente por la red, encontré la solución
Efectivamente se utiliza la método NO DOCUMENTADO (¿qué mal eso no?) condenseWhite. La "restricción" de dicho método es que sirve para TextField del tipo htmlText, pero gracias a un prototype de la clase TextField podemos utilizarlo en cualquier campo de texto (entiéndase tipo). Les dejo la solución porque a más de alguno le servirá

Código:
TextField.prototype.addProperty("text2", function () {
	return this.text;
}, function (txt) {
	if (!this.condenseWhite) {
		this.text = txt;
		return;
	}
	for (var i = 0; i<txt.length; i++) {
		if (txt.charCodeAt(i)>32) {
			txt = txt.substring(i);
			break;
		}
	}
	for (var i = 0, t = ""; i<txt.length; i++) {
		if (txt.charCodeAt(i)>32) {
			t += txt.charAt(i);
		} else {
			if (i != 0 && txt.charCodeAt(i+1)>32) {
				t += txt.charAt(i);
			}
		}
	}
	this.text = t;
});
Y para que vean que funciona muy bien:

Código:
tuTextField.condenseWhite = true;
tuTextField.text2 = "      cadena   con muchos    espacios  inservibles ";
trace(tuTextField.text2);
Me sirvió demasiado esto, seguro que a ustedes también
__________________
GOC00 CominG soOn v2.0
CyA! & GooD LuCK...
  #5 (permalink)  
Antiguo 09/08/2006, 14:34
 
Fecha de Ingreso: enero-2005
Ubicación: culiacan, sinaloa, mexico
Mensajes: 97
Antigüedad: 12 años, 11 meses
Puntos: 0
bueno de echo el metodo ese viene en la ayuda de flash8 en las propiedades del textfield, puedes buscarle si quieres solo presiona F1, creo que es donde debes buscar ahi antes que en cualquier otro lado
  #6 (permalink)  
Antiguo 09/08/2006, 17:37
Avatar de goc00  
Fecha de Ingreso: enero-2002
Ubicación: 000's DiMensiOn
Mensajes: 979
Antigüedad: 15 años, 11 meses
Puntos: 3
Cita:
Iniciado por guest150783 Ver Mensaje
bueno de echo el metodo ese viene en la ayuda de flash8 en las propiedades del textfield, puedes buscarle si quieres solo presiona F1, creo que es donde debes buscar ahi antes que en cualquier otro lado
Claro, en Flash 8 pero yo tengo Flash MX versión 6.0
En fin, ya les puse la solución, seguro que le sirve a alguien más.
__________________
GOC00 CominG soOn v2.0
CyA! & GooD LuCK...
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




La zona horaria es GMT -6. Ahora son las 08:46.