Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/02/2016, 14:28
Avatar de freesoftwarrior
freesoftwarrior
 
Fecha de Ingreso: marzo-2006
Mensajes: 362
Antigüedad: 18 años, 9 meses
Puntos: 10
Respuesta: Personalizar teclas de función y combinación de teclas en formulario

Había dejado de lado esta idea hasta que encontré la solución. La publico para los que estén interesados.

Tal vez formulé mal la pregunta. Los pasos que seguí son los siguientes:

1. Cargar el formulario en vista de diseño
2. Normalmente al cargar un formulario, este es seleccionado, es decir, el cuadradito que esta en la esquina superior izquierda del formulario esta seleccionado.
3. Voy a la Hoja de propiedades, a la ficha Todas
4. Busco (en mi caso esta al final, yo tengo Access 2007) Tecla de vista previa y le doy el valor de Si
5. Guardo y agrego el código necesario.

Este es el código que utilizo para uno de los formularios


Código:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    'MsgBox KeyCode  '*** esta línea la utilizo para averiguar el código asignado a una tecla en particular, en caso desconocerlo

    '**********************************************     COMBINACIÓN DE TECLAS CON CTRL
    Dim intShiftDown As Integer, intAltDown As Integer
    Dim intCtrlDown As Integer
    
    intShiftDown = (Shift And acShiftMask) > 0
    intAltDown = (Shift And acAltMask) > 0
    intCtrlDown = (Shift And acCtrlMask) > 0
    
    'If intShiftDown Then MsgBox "Has precionado la tecla SHIFT"
    'If intAltDown Then MsgBox "Has precionado la tecla ALT"
    'If intCtrlDown Then MsgBox "Has precionado la tecla CTRL"
    

    '***** CTRL + D
    If intCtrlDown And KeyCode = 68 Then
        Dim stDocName01 As String
    
        '**** rutina para abrir un formulario
    End If
    
    '***** CTRL + G = GRABAR Y CERRAR
    If intCtrlDown And KeyCode = 71 Then
        '*** la rutina que se necesite
    End If
    
    '***** SHIFT + G = GRABAR Y CONTINUAR
    If intShiftDown And KeyCode = 71 Then
        '*** la rutina que se necesite
    End If
    
    
    '**********************************************     TECLAS DIVERSAS
    If KeyCode = 27 Then    '*** ESC
        DoCmd.Close
    End If


    '**********************************************     TECLAS DE FUNCIÓN
    '***** El código 112 corresponde a la tecla F1 que esta asignada a la ayuda de Access
    'If KeyCode = 113 Then      '*** F2

    'End If
    'If KeyCode = 114 Then      '*** F3

    'End If
    'If KeyCode = 115 Then      '*** F4
        
    'End If
    'If KeyCode = 116 Then      '*** F5

    'End If
    'If KeyCode = 117 Then      '*** F6
        
    'End If
    
'***** El código 118 corresponde a la tecla F7 que esta asignada al corrector ortográfico

    'If KeyCode = 119 Then      '*** F8

    'End If
    'If KeyCode = 120 Then      '*** F9

    'End If
    'If KeyCode = 121 Then      '*** F10

    'End If
    'If KeyCode = 122 Then      '*** F11

    'End If
    
'***** El código 123 corresponde a la tecla F12 que esta asignada a la opción "Guardar como"
End Sub