Pregunta: | 10657 - DESACTIVAR TECLAS FUNCION (EN UNA FUNCION) |
Autor: | Berni Rodri Seg |
He creado una aplicación y la he convertido a MDE. La cuestión es que cómo se pueden desactivar las teclas de función, no a traves de Herramientas, Opciones, ya que igual que se activa se desactiva, sino mediante código (tengo la copia en MDB). Quisiera que alguién me enviase el código escrito de como desactivar, por ejemplo la Tecla F1.
Gracias anticipadas |
Respuesta: | MERLIN |
Access no estable un codigo preciso de desactivacion de teclas pero de doy las siguientes opciones.
Si no deseas que access muestre la ayuda de Access cuando presionen F1 puedes crear tu propio archivo de ayuda y asignarlo dentro de las propiedades de cada formulario en la seccion otras de propiedades. Tambien puedes usar los eventos KeyDown y KeyUp dentro de cada formulario e identificar la tecla que necesites con las siguientes constantes. vbKey0 vbKeyF5 vbKeyNumPad4 vbKey1 vbKeyF6 vbKeyNumPad5 vbKey2 vbKeyF7 vbKeyNumPad6 vbKey3 vbKeyF8 vbKeyNumPad7 vbKey4 vbKeyF9 vbKeyNumPad8 vbKey5 vbKeyF10 vbKeyNumPad9 vbKey6 vbKeyF11 vbKeyO vbKey7 vbKeyF12 vbKeyP vbKey8 vbKeyF13 vbKeyPageDown vbKey9 vbKeyF14 vbKeyPageUp vbKeyA vbKeyF15 vbKeyPause vbKeyAdd vbKeyF16 vbKeyPrint vbKeyB vbKeyG vbKeyQ vbKeyBack vbKeyH vbKeyR vbKeyC vbKeyHelp vbKeyRButton vbKeyCancel vbKeyHome vbKeyReturn vbKeyCapital vbKeyI vbKeyRight vbKeyClear vbKeyInsert vbKeyS vbKeyControl vbKeyJ vbKeySelect vbKeyD vbKeyK vbKeySeparator vbKeyDecimal vbKeyL vbKeyShift vbKeyDelete vbKeyLButton vbKeySnapshot vbKeyDivide vbKeyLeft vbKeySpace vbKeyDown vbKeyM vbKeySubtract vbKeyE vbKeyMButton vbKeyT vbKeyEnd vbKeyMenu vbKeyTab vbKeyEscape vbKeyMultiply vbKeyU vbKeyExecute vbKeyN vbKeyUp vbKeyF vbKeyNumLock vbKeyV vbKeyF1 vbKeyNumPad0 vbKeyW vbKeyF2 vbKeyNumPad1 vbKeyX vbKeyF3 vbKeyNumPad2 vbKeyY vbKeyF4 vbKeyNumPad3 vbKeyZ Lo malo de este es que lo tienes que invocar en cada control. O puedes usar el siguiente es el codigo de ejemplo de Access para establecer opciones de inicio tu lo puedes adaptar y configurarlo de acuerdo a tus necesidades. Sub EstablecerPropiedadesDeInicio() CambiarPropiedad "StartupForm", dbText, "Clientes" CambiarPropiedad "StartupShowDBWindow", dbBoolean, False CambiarPropiedad "StartupShowStatusBar", dbBoolean, False CambiarPropiedad "AllowBuiltinToolbars", dbBoolean, False CambiarPropiedad "AllowFullMenus", dbBoolean, True CambiarPropiedad "AllowBreakIntoCode", dbBoolean, False CambiarPropiedad "AllowSpecialKeys", dbBoolean, True CambiarPropiedad "AllowBypassKey", dbBoolean, True End Sub Function CambiarPropiedad(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer Dim dbs As Database, prp As Property Const conPropNotFoundError = 3270 Set dbs = CurrentDb On Error GoTo Change_Err dbs.Properties(strPropName) = varPropValue CambiarPropiedad = True Change_Bye: Exit Function Change_Err: If Err = conPropNotFoundError Then ' Propiedad no encontrada. Set prp = dbs.CreateProperty(strPropName, _ varPropType, varPropValue) dbs.Properties.Append prp Resume Next Else ' Error desconocido. CambiarPropiedad = False Resume Change_Bye End If End Function |