segunda-feira, 11 de janeiro de 2010

Mudar o foco de campo ao pressionar "ENTER"

Situação:
Ao criarmos um formulário com "n" campos e pressionarmos a tecla "Enter", o sistema não está mudando o foco do campo.

O que fazer?
Primeiro passo:
Vamos na paleta Properties do formulário em questão e mudaremos a propriedade KeyPreview para True. Isso fará com que o sistema entenda que serão tratados os eventos Keypress, Keydown e Keyup.


















Segundo passo:
No evento KeyDown do formulário, vamos incluir o seguinte trecho de código:










Esse trecho de código faz com que, ao pressionar a tecla Enter, o sistema execute a ação da tecla Tab, mudando o cursor para o próximo campo.


A instrução e.SuppressKeyPress = true é utilizada para não ficar apitando sempre que pressionar Enter.

Observação: Para que o campo receba o foco, a propriedade TabStop do mesmo deve estar True.