Visual Basic - Comportamiento de la tecla ENTER

Life is soft - evento anual de software empresarial
 
Vista:

Comportamiento de la tecla ENTER

Publicado por Jose Buten (14 intervenciones) el 10/01/2003 16:17:45
Como puedo controlar el comportamiento de la tecla ENTER en una frm para que al presionar ENTER [INTRO] en un campo pase al siguiente campo y así campo tras campo?

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Comportamiento de la tecla ENTER

Publicado por Miguel (243 intervenciones) el 10/01/2003 18:33:39
Pones la propiedad KeyPreview del Form a True y esto en el keypress

Private Sub Form_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 13
SendKeys "{TAB}"
End Select
End Sub

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Comportamiento de la tecla ENTER

Publicado por Esteban (1144 intervenciones) el 10/01/2003 19:30:34
Te tengo una mala noticia, el SendKeys es algo pesado según la velocidad de procesamiento, tengo un código que encontré aquí en LWP, que es muy ágil:

Primero, coloca esta parte en un módulo para que lo puedan utilizar todas las partes del programa
Public Const VK_TAB = &H9
Public Const KEYEVENTF_EXTENDEDKEY = &H1
Public Const KEYEVENTF_KEYUP = &H2
Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)

'Luego, dentro de la forma agrega este código:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then
'Simular que pulsamos la tecla
keybd_event VK_TAB, 0, 0, 0
'Simular que soltamos la tecla
keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0
End If
End Sub

Verás como sí sirve de maravilla, además puedes utilizar combinaciones de teclas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar