En ocasiones sucede que cuando ponemos campos de texto, para la introducción de datos, de cierta capacidad, no sabemos cuanto nos queda para completarlo.
Aquí os pongo una solución que utilizo en algunas de mis aplicaciones.

Se trata de combinar una caja de texto con una barra de progreso, así veremos cuanto espacio nos queda antes de llegar al número máximo de caracteres permitidos.
Es una única función para tantos campos como se desee.
Tenemos una caja de texto con el id="c_texto" y una barra de progreso con el id="barraProgreso".
private function ini():void{
barraProgreso.mode="manual";
barraProgreso.minimum=0;
barraProgreso.maximum=100;
c_texto.maxChars=200;
c_texto.editable=true
}
Las propiedades de la barra de progreso se pueden poner en una función de inicio, en el ejemplo la llamo ini(), o bien establecerlas directamente en las propiedades del objeto. También le decimos que establezca como número máximo de caracteres del campo c_texto, a 200, y que sea editable, para que puedan introducir datos.
private function BarraProgresoTextos(nombreBarra,nombreCaja):void{
var longitudCaja:Number=nombreCaja.length;
var maxCaja:Number=nombreCaja.maxChars;
nombreBarra.setProgress(longitudCaja,maxCaja);
}
Por último, en la propiedad Change del campo tenemos que hacer la llamada a la función: change="BarraProgresoTextos(barraProgreso,c_texto);
Si quisieramos utilizar la misma barra de progreso para otro campo diferente, por ejemplo el campo id="c_detalles", tan solo deberemos de poner en su propiedad change="BarraProgresoTextos(barraProgreso,c_detalles); por el contrario, si queremos usar otra barra de progreso diferente, pondremos change="BarraProgresoTextos(nombre barraProgreso,nombre campo);