Blz Ednei,

Eu uso assim:

...
public function mudarComponente(evento: KeyboardEvent):void {
            if (evento.keyCode == Keyboard.ENTER){
                    if (evento.shiftKey){

focusManager.getNextFocusManagerComponent(true).setFocus();
                    }
                    else{

focusManager.getNextFocusManagerComponent(false).setFocus();
                    }
            }
        }
   ...

para chamar este método coloco o mudarComponente na propriedade keyDown de
cada componente que desejar, ou pode colocar no keyDown do container assim
tudo que poderá receber um foco será 'atingido'.

Espero ter ajudado!







Em 8 de dezembro de 2010 19:58, Ednei <[email protected]> escreveu:

> Repostando a função.
>
>            protected function handleKeyboardEnter(event:KeyboardEvent):void
>            {
>                if (event.keyCode== 13)
>                {
>                                var fm:IFocusManager = this.focusManager;
>                    var next:IFocusManagerComponent =
> fm.getNextFocusManagerComponent();
>                     fm.setFocus(next);
>                 }
>            }
>
>
> On Dec 8, 8:05 pm, Ednei <[email protected]> wrote:
> > Opa, eu tenho um código dentro da minha classe InputMoney. Na qual
> > quando o usuário apertar ENTER, o focus passaria para o próximo campo
> > - como acontece com o Tab.
> >
> >             protected function
> handleKeyboardEnter(event:KeyboardEvent):void
> >             {
> >                 if (event.keyCode== 13)
> >                 {
> >                                 var fm:IFocusManager = this.focusManager;
> >                     var next:IFocusManagerComponent =
> > fm.getNextFocusManagerComponent();
> >                     fm.setFocus(fm.getNextFocusManagerComponent());
> >                 }
> >             }
> >
> > Mas aparece essa mensagem.
> >
> > TypeError: Error #1009: Não é possível acessar uma propriedade ou um
> > método de uma referência de objeto nula.
> >         at
> mx.managers::FocusManager/setFocus()[C:\autobuild\3.2.0\frameworks
> > \projects\framework\src\mx\managers\FocusManager.as:545]
> >         at
> br.com.app.component::InputMoney/handleKeyboardEnter()[C:\xampp
> > \htdocs\gw\src_flex\br\com\app\component\InputMoney.as:80]
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>



-- 
*William de Farias Lima*
Desenvolvedor - FCM Sistemas
www.fcmsistemas.com.br
williamlima @fcmsistemas.com.br

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a