ENTER COMO TAB - DUVIDA DE OPERACAO

USUARIO.EXCLUIDOS 12/01/2005 11:09:09
#60215
Salve pessoal do VB!!!!
Fiz uma aplicação que usa Enter no lugar de TAB, em um cadastro de clientes
Em cada um dos eventos Keypress dos meus text's eu tive que digitar o seguinte:

 Private Sub txtbairro_KeyPress(Keyascii As Integer)
If Keyascii = 13 Then Keyascii = 0: txtcidade.SetFocus
End Sub


No caso aqui, eu tinha 8 campos para fazer isso, portanto, tive que digitar isso nos campos Nome, endereço, CPF - no exemplo, está o campo bairro.
Tenho algumas dúvidas:
1 - Porque eu tenho que digitar o comando Keyascii = 0 depois do then. Se eu não digitar esse comando, o Enter - quando pressionado - apaga o que eu tinha escrito no text anteriormente.
2 - Tentei fazer esse comando utilizando o Sendkey mas também não deu certo. Alguém poderia me dar um exemplo de como utilizá-lo (até tinha achado aqui no VB Mania um exemplo com esse comando mas não rodou aqui no meu micro)
3 - Não tem como fazer isso no form_Load para que o VB utilize a seqà¼ência do Tabindex definida no momento de design?

Obrigado pessoal!!

T+
THIAGO.CESAR 12/01/2005 11:47:35
#60228
ETERINO,
Quanto à s suas dúvidas:

1. O KeyAscii = 0 server para "Anular" o comportamento da tecla Enter, é como se nenhuma tecla tivesse sido pressionada.
2. O que pretendia ou pretende fazer com o SendKey?
3. Todos os campos que pretende alternar são TextBox? se forem, deixe-os em um array e coloque assim:
 textbox(index +1).setfocus


CAJU 12/01/2005 12:43:46
#60251
é melhor vc colocar no form a propriedade
KeyPreview = True

então no

Form_KeyDown
'vc coloca:
if keycode = vbkeyreturn then sendkeys "{TAB}": keycode =0

'oks?
USUARIO.EXCLUIDOS 19/01/2005 21:20:10
#61888
Caju, esse evento Keydown no form, seria o quê?
Ele é acionado quando?
USUARIO.EXCLUIDOS 20/01/2005 07:53:50
#61904
quanto ao keydown do form é:
quando você coloca o evento no keypress de uma text por exemplo sua rotina só vai funcionar quando você estiver nesta text, agora se colocar no form, em qualquer parte dele vai funcionar.
USUARIO.EXCLUIDOS 20/01/2005 08:41:13
#61910
Resposta escolhida
é Verdade, cara, não compensa você ficar fazendo de um por um!! nossa.. é um trabalhão!! faça com oo CAJU postou e pronto!!! já funciona em todos os TEXTBOX, eu já faço assim o

no form
KeyPreview = True

então no

Form_KeyPress
'coloco
if keyascii = 13 then sendkeys "{TAB}": keycode =0


Blz? Até!
Tópico encerrado , respostas não são mais permitidas