Hola, ante todo perdonar este mensaje en HTML pero es que sino el c�digo queda ilegible (adem�s mi servidor de correo de la universidad tiene un antivirus incorporado)
 
Os explico como hago yo los saltos entre los campos de un formulario:
 
Me defino unas variables en la l�nea de tiempo principal, que van a ser el n�mero de campos que tiene el formulario, un vector que contiene el nombre de cada uno de estos campos y una variable que me sirve de indice para referenciar al vector:
 
campos = new Array("Nombre", "Email", "Destino", "EmailDestino", "Titulo", "Mensaje");
numeroCampos = 6;
focus = 0;
 
El formulario lo tengo en un movieclip, y el movieclip tiene este c�digo asociado:
 
onClipEvent (keyDown) {
    if (Key.isDown(Key.TAB) && bloqueo == 0) {      //Si pulsamos tabulador
        bloqueo = 1;                                                //leer m�s abajo la explicaci�n de esta variable
        if (Key.isDown(Key.SHIFT)) {                         //Si tambi�n est� pulsada la tecla mayusculas vamos hacia atr�s
            _root.focus--;                                           //la variable focus la voy a utilizar de �ndice, para saber en que campo estoy
            if (_root.focus<0) {                                   //hacemos el formulario rotativo, del primero se puede pasar al �ltimo
                _root.focus = _root.numeroCampos-1;
            }
        }
        else {           //Nos movemos al siguiente campo. Si fuera el �ltimo campo, volver�amos al primero (rotativo)
            _root.focus = ((_root.focus+1)%_root.numeroCampos;
        }
       Selection.setFocus(_root.campos[_root.focus]);    //vamos al campo que nos indica la variable focus
   }
   if (!Key.isDown(Key.TAB)) {            //quitamos el bloqueo
      bloqueo = 0;
   }
}
La variable bloqueo me sirve para evitar que el c�digo se ejecute m�s de una vez y no se haga bien el salto, ya que cuando pulsamos el tabulador se dispara m�s de una vez el evento keyDown, y podriamos pasar del campo 1 al campo 3 y causaria un efecto algo raro :)
 
----- Original Message -----
From: "Luis Arturo P�rez Guevara" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, January 18, 2002 4:28 PM
Subject: RE: [flashmaestro] Focus en TextFields...

> Para obtener el focus del primer textfield ya lo tengo resuelto, pero cuando
> intento brincar al siguiente me brinca a otro que no es el consecutivo,
> aunque los vaya agregando en forma secuencial...
>
> Quiero que el salto lo haga solamente cuando se presione key.TAB o
> key.ENTER, por lo tanto cada textfield lo convert� en mc y del primero al
> segundo no hay problema, pero cuando presiono cualquiera de estas teclas se
> queda nuevamente en el segundo y no avanza...
>
> Este es el c�digo que tengo para cada textfield...
>
> onClipEvent (keyDown) {
> if ((Key.getCode() == Key.TAB) || (Key.getCode() == Key.ENTER)) {
> Selection.setFocus( "_root.mcparent.mcchild.TextFieldx" );
> }
> }
>
> Donde x es el n�mero del textfield...
>
> -----Original Message-----
> From: sml8jm . [mailto:[EMAIL PROTECTED]]
> Sent: Jueves, 17 de Enero de 2002 03:37 p.m.
> To:
[EMAIL PROTECTED]
> Subject: Re: [flashmaestro] Focus en TextFields...
>
>
> Hola, no se si te refieres a esto pero para asignar el focus a un textfield
> has de poner lo siguiente (por ejemplo en el primer fotograma de la escena):
>
>    Selection.setFocus("comosellametutextfield");
>
> Al textfield le puedes indicar el numero de caracteres a incluir (Panel
> Opciones de Texto>Max Caracts).
> Espero que te sirva.
>
>
>        This message has been brought to you by: JUAN
>
> - Que le vaya bonito!!!
> -
[EMAIL PROTECTED]
>
>
>
> >From: Luis Arturo P�rez Guevara <
[EMAIL PROTECTED]>
> >Reply-To:
[EMAIL PROTECTED]
> >To: [EMAIL PROTECTED]
> >Subject: [flashmaestro] Focus en TextFields...
> >Date: Thu, 17 Jan 2002 10:37:01 -0600
> >
> >Hola:
> >
> >En Flash existe la posibildad de asignar v�a AS el focus de un TextField???
> >
> >Tengo un mc en el cual tengo varios input text, los fui agregando uno a uno
> >dependiendo del orden en el que los quer�a; pero al poner el input 7 del
> >input 4 se brincaba al 7 y si en lugar de hacer la selecci�n con el
> >tabulador la hago directamente con el mouse en cada campo solamente puedo
> >escribir un caracter...
> >
> >Salu2...
>
>
>
>
>
>
>
>
>
>
> _________________________________________________________________
> Hable con sus amigos en l�nea, pruebe MSN Messenger:
http://messenger.msn.es

Responder a