Uso de flecha arriba y abajo teclas de flecha para mover el foco

Seleccione idioma Seleccione idioma
Id. de artículo: 100413 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Resumen

Puede interceptar de flecha arriba y flecha abajo de teclas del teclado extendido en algunos controles de Visual Basic ubicando código en el procedimiento de evento KeyDown. El código utiliza los valores de KeyCode para interceptar las teclas flecha arriba y flecha abajo. Sin embargo, no puede reventar las claves de todos los controles porque algunos controles ya tienen funcionalidad integrada para las teclas flecha arriba y abajo, por lo que no se genera ningún evento de KeyDown de Visual Basic.

Más información

La información en este artículo se proporciona para mostrar que es posible interceptar la flecha arriba y teclas de flecha abajo, sin embargo Microsoft no recomienda implementarlo porque las teclas flecha arriba y flecha abajo tienen el comportamiento estándar, predefinida en algunos controles. Microsoft recomienda que utilice el método estándar para que utilizar el teclado para mover el foco; es decir, utilice las teclas TAB y MAYÚS+TAB o utilice las teclas de acceso.

Ejemplo paso a paso para mover el enfoque utilizar arriba y flecha abajo

  1. Iniciar Visual Basic o en el menú Archivo, elija Nuevo proyecto (ALT, F, N) si Visual Basic ya se está ejecutando.
  2. Agregue un cuadro de imagen y dos cuadros de texto a Form1.
  3. En el procedimiento de evento Picture1_KeyDown, agregue este código:
       Sub Picture1_KeyDown(KeyCode AS INTEGER, Shift AS INTEGER)
          IF KeyCode = 38 Then    '* 38 = up arrow key
             Text2.SetFocus
          Text2.SelStart = 0   '* set the cursor to the start
          END IF
    
          IF KeyCode = 40 Then    '* 40 = down arrow key
             Text1.SetFocus
          Text1.SelStart = 0   '* set the cursor to the start
          END IF
       END SUB
    						
  4. En el procedimiento de evento Text1_KeyDown, agregue este código:
       Sub Text1_KeyDown(KeyCode AS INTEGER, Shift AS INTEGER)
          If KeyCode = 38 Then    '* 38 = UP ARROW key
             Picture1.SetFocus
          End If
    
          If KeyCode = 40 Then    '* 40 = DOWN ARROW key
             Text2.SetFocus
             Text2.SelStart = 0   '* set the cursor to the start
          End If
       End Sub
    						
  5. En el procedimiento de evento Text2_KeyDown, agregue este código:
       Sub Text2_KeyDown(KeyCode AS INTEGER, Shift AS INTEGER)
          If KeyCode = 38 Then    '* 38 = UP ARROW key
             Text1.SetFocus
             Text1.SelStart = 0   '* set the cursor to the start
          End If
    
          If KeyCode = 40 Then    '* 40 = DOWN ARROW key
             Picture1.SetFocus
          End If
       End Sub
    						
  6. Elija iniciar en el menú Ejecutar o presione F5 para ejecutar el ejemplo. Presione la tecla flecha arriba o flecha abajo para ver el foco mover a un control diferente.
Si utilizar las teclas de flecha izquierda o derecha, puede desplazarse en un cuadro de texto, pero se omiten estas claves en el cuadro de imagen en este ejemplo.

Propiedades

Id. de artículo: 100413 - Última revisión: martes, 16 de agosto de 2005 - Versión: 2.1
La información de este artículo se refiere a:
  • Microsoft Visual Basic 2.0 Standard Edition
  • Microsoft Visual Basic 3.0 Professional Edition
  • Microsoft Visual Basic 2.0 Professional Edition
  • Microsoft Visual Basic 3.0 Professional Edition
  • Microsoft Visual Basic 1.0 Standard Edition
  • Microsoft Visual Basic for MS-DOS
Palabras clave: 
kbmt KB100413 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 100413
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com