keybd_event

Declare Sub keybd_event Lib "user32" _
    ByVal bVk As Byte, _
    ByVal bScan As Byte, _
    ByVal dwFlags As Long, _
    ByVal dwExtraInfo As Long)

keybd_event имитирует нажатия клавиш на клавиатуре. В Windows XP и выше эта функция считается устаревшей. Пользуйтесь SendInput

Параметры

bVk
Виртуальный код клавиши для имитации нажатия и отпускания клавиши
bScan
Зарезервировано - установлено в 0
dwFlags
Комбинация следующих флагов определяет различные способы имитации:
KEYEVENTF_EXTENDEDKEY= &H1
Префикс скан-кода с префиксным байтом, имеющим значение &HE0
KEYEVENTF_KEYUP= &H2
Клавиша, указанная в bVk будет отпущена. Если этот флажок не определен, клавиша будет нажата
dwExtraInfo
Дополнительное 32-разрядное значение, связанное с событием клавиатуры

Пример


' Имитируем нажатия клавиш CTRL+ESC для нажатия кнопки Пуск

keybd_event VK_CONTROL, 0, 0, 0  ' нажимаем CTRL
keybd_event VK_ESCAPE, 0, 0, 0  ' нажимаем ESC
keybd_event VK_CONTROL, 0, KEYEVENTF_KEYUP, 0  ' отпускаем CTRL
keybd_event VK_ESCAPE, 0, KEYEVENTF_KEYUP, 0  ' отпускаем ESC


' Процедура Свернуть все окна
Public Sub MinimizeAll() keybd_event &H5B, 0, 0, 0 keybd_event &H4D, 0, 0, 0 keybd_event &H5B, 0, &H2, 0 End Sub
' Нажимаем Atl+Tab ' Press Alt. keybd_event VK_ALT, 0, 0, 0 DoEvents ' Press Tab. keybd_event VK_TAB, 1, 0, 0 DoEvents ' Release Alt. keybd_event VK_ALT, 0, KEYEVENTF_KEYUP, 0 DoEvents

Смотри также

mouse_event, SendInput

Категория

Клавиатура