Comunidad de diseño web y desarrollo en internet online

Pregunta sobre TextField

Citar            
MensajeEscrito el 15 Sep 2011 06:02 pm
Hola a todos.

Tengo un pequeño problema. En mi aplicación en flash, hay dos TextField para introducir texto. Yo quiero que cuando se tenga el foco en uno de los TextField (el cursor este en ese TextField), se ejecute una cierta acción la cuál dependería del TextField seleccionado. Creo que utilizando un listener con SetFocus se puede hacer, pero no se muy bien como hacerlo.

De antemano muchas gracias

Por Akai

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Sep 2011 06:14 pm
Aquí el ejemplo de la ayuda de AS2

Código ActionScript :

this.createTextField("first_txt", 1, 10, 10, 300, 20);
first_txt.border = true;
first_txt.type = "input";
this.createTextField("second_txt", 2, 10, 40, 300, 20);
second_txt.border = true;
second_txt.type = "input";
first_txt.onKillFocus = function(newFocus:Object) {
    trace(this._name+" lost focus. New focus changed to: "+newFocus._name);
};
first_txt.onSetFocus = function(oldFocus:Object) {
    trace(this._name+" gained focus. Old focus changed from: "+oldFocus._name);
}


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Sep 2011 07:34 pm
Muchas gracias Jorge, en verdad muchas gracias, has sido de mucha ayuda.

Tengo otra pregunta ¿como hago para restringir el tipo de datos que se mete en el textField? por ejemplo, para que solo sean datos numéricos en lugar de un String.

Por Akai

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Sep 2011 07:37 pm
Ok, esta vez tendras que ir tu a la ayuda (F1) y buscar en el dicionario de AS la clase TextField, propiedad restrict

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Sep 2011 09:23 pm
De nuevo, muchas gracias, como soy un poco nuevo en esto, a veces se me pasa mirar la ayuda. :)

Una última pregunta. tengo un textField, que se llena con teclado y con unos botones que tienen valores numéricos, es decir un botón para cada uno de los 10 dígitos. Cuando el cursor no está en el textField (no tiene el foco), al dar click en un botón de los número, el textField se llena con el valor de la cifra, pero si el cursor esta en ese TextField (tiene el foco) no siempre se llena con el valor del dígito del boton, como si el boton no respondiera. Yo creo que al darle click en alguno de los botones de los dígitos, debo quitarle el foco al texField, para así llenarlo. El problema es que no se como quitarlo.

Mirando la ayuda creo que se llama a onKillFocus, pero, no quiero dejar con el foco a ningún textField, y no se bien si se hace con esa función.

Por Akai

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 16 Sep 2011 01:06 am
Mientras se escribe en un TextField, el textfield tiene foco, pero al darle a un botón automáticamente se pierde, porque el foco lo tiene el botón.De todas formas si el botón le asigna algún contenido a TextField.text, debería verse

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 19 Sep 2011 05:22 pm
Gracias por la respuesta. Al dar click sobre el boton, en algunas veces si llena el textfield, pero otras no. En verdad no se el por que :S

De todos modos, me gustaría saber si existe alguna manera de quitarle el foco a un textField, por código sin tener que asignarlo a otro textField.

Por Akai

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 19 Sep 2011 11:45 pm
EL foco tiene que estar en algun lado, si lo quitas de un lugar ... es poque lo pones en otro

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 22 Sep 2011 05:00 pm
Bueno, en verdad me has ayudado mucho, muchas gracias.Por cierto, sabes como hago para poner el cursor en alguna posicion del textField?, por ejemplo, si hay texto, ponerlo al final o al principio de este.

Y existe alguna manera de que cuando ponga el foco en un textField con texto, el texto no quede en negro, como si fuera seleccionado? (lo cual hace, que si le escribo algún dato, el texto anterior se borre :shock: )

Muchas gracias :)

Por Akai

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Sep 2011 06:00 pm
En AS2 está el objeto Selection, miralo en la ayuda

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 22 Sep 2011 08:11 pm
De nuevo, muchas gracias por la pronta respuesta.

Otra pregunta: Tengo un listener que realiza ciertas acciones cuando se da click sobre un textField llamado i_clave . Si no se cumplen ciertas condiciones, quiero que el foco pase a otro textField llamado i_documento.

Lo he intentado así:

Código ActionScript :

_root.i_clave.onSetFocus = function(i_documento:Object) { 
   if (_root.i_documento.text == "") {
         Formato.color = 0xFF0000;
         this.textdoc.setTextFormat(Formato);
         Selection.setFocus("i_documento");
         txterror = "Por favor digite el número";
      }else{
         funcborde(2);
         _root.opcion = 2;
   }
};


lo que está en el if lo hace, menos poner el foco en el otro textField ¿por que?

Por Akai

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Sep 2011 09:17 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

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