Программирование на Visual Basic | Microsoft Access. Как определить процедуру нажатия клавиш

В этом разделе сайта находятся примеры из сборника программ "Архив файлов на Microsoft Access". В нем рассказывается о программировании форм, отчетов, таблиц и других объектов. Используйте этот архив для изучения работы с приложением Microsoft Office Access и программированием на Visual Basic for Application. Тем кто уже знаком с VBA, используйте поиск для нахождения кодов. Наберите, например, DAO, ADO, Recordset и найдете нужную ссылку для решения проблемы с программированием

Microsoft Access. Как определить процедуру нажатия клавиш

07. Это пример необходим для того, чтобы использовать клавиатуру в ваших разработках. Обратите внимание какой код передает кнопка на клавиатуре для разных языков.

Option Compare Database
Option Explicit

'==============================================================
'   Нажать клавишу клавиатуры
Public Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
        Case vbKeyF1 '0x70 F1 ключ
        Case vbKeyF2 '0x71 F2 ключ
        Case vbKeyF3 '0x72 F3 ключ
        Case vbKeyF4 '0x73 F4 ключ
        Case vbKeyF5 '0x74 F5 ключ
        Case vbKeyF6 '0x75 F6 ключ
        Case vbKeyF7 '0x76 F7 ключ
        Case vbKeyF8 '0x77 F8 ключ
        Case vbKeyF9 '0x78 F9 ключ
        Case vbKeyF10 '0x79 F10 ключ
        Case vbKeyLButton '0x1 Левая клавиша мыши
        Case vbKeyRButton '0x2 Правая клавиша мыши
        Case vbKeyCancel '0x3 CANCEL ключ
        Case vbKeyMButton '0x4 Средняя клавиша мыши
        Case vbKeyBack '0x8 BACKSPACE ключ
        Case vbKeyTab: '0x9 TAB ключ
        Case vbKeyClear '0xC CLEAR ключ
        Case vbKeyReturn '0xD ENTER ключ
        Case vbKeyShift '0x10 SHIFT ключ
        Case vbKeyControl '0x11 CTRL ключ
        Case vbKeyMenu '0x12 MENU ключ
        Case vbKeyPause '0x13 PAUSE ключ
        Case vbKeyCapital '0x14 CAPS LOCK ключ
        Case vbKeyEscape '0x1B ESC ключ
        Case vbKeySpace '0x20 SPACEBAR ключ
        Case vbKeyPageUp '0x21 PAGE UP ключ
        Case vbKeyPageDown '0x22 PAGE DOWN ключ
        Case vbKeyEnd '0x23 END ключ
        Case vbKeyHome '0x24 HOME ключ
        Case vbKeyLeft '0x25 LEFT ARROW ключ
        Case vbKeyUp '0x26 UP ARROW ключ
        Case vbKeyRight '0x27 RIGHT ARROW ключ
        Case vbKeyDown '0x28 DOWN ARROW ключ
        Case vbKeySelect '0x29 SELECT ключ
        Case vbKeyPrint '0x2A PRINT SCREEN ключ
        Case vbKeyExecute '0x2B EXECUTE ключ
        Case vbKeySnapshot '0x2C SNAPSHOT ключ
        Case vbKeyInsert '0x2D INSERT ключ
        Case vbKeyDelete '0x2E DELETE ключ
        Case vbKeyHelp '0x2F HELP ключ
        Case vbKeyNumlock '0x90 NUM LOCK ключ
        Case Else
            'MsgBox "Другой ключ"
    End Select
        Me.myKey.Caption = "Код кнопки клавиатуры: "  Format(KeyCode, "000")
        Me.myShift.Caption = "Код кнопки Shift: "  Format(Shift, "000")
        Me.myXY.Caption = "Координаты: -"
        
        'Обнулить данные, чтобы не работали клавиши
        'и другие "Alt-", "F1" и т.п.
        KeyCode = 0
        Shift = 0
End Sub

'==============================================================
'   Открытие модуля
Private Sub butVBA_Click()
    DoCmd.OpenModule Me.Module
End Sub

'==============================================================
'   Загрузка формы
Private Sub Form_Load()
    Me.KeyPreview = True 'Включить обработку клавиатуры
End Sub

'==============================================================
'   Нажатие клавиши мыши
Private Sub Пример_7_MouseDown(Button As Integer, Shift As Integer, X As Single, y As Single)
    Select Case Button
        Case acLeftButton
        Case acRightButton
        Case acMiddleButton
    End Select
    Select Case Shift
        Case acShiftMask
        Case acCtrlMask
        Case acAltMask
    End Select
    Me.myKey.Caption = "Кнопка мыши: "  Format(Button, "000")
    Me.myShift.Caption = "Код кнопки Shift: "  Format(Shift, "000")
    Me.myXY.Caption = "Координаты мыши в твипах: X="  X  ", Y="  y
    
End Sub

'==============================================================
'   Передвинуть мышь
Private Sub Пример_7_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single)
    Пример_7_MouseDown Button, Shift, X, y
End Sub

Добавить комментарий

Loading