Const VK_H = 72
Const VK_E = 69
Const VK_L = 76
Const VK_O = 79
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2
Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Sub Form_KeyPress(KeyAscii As Integer)
'Print the key on the form
Me.Print Chr$(KeyAscii);
End Sub
Private Sub Form_Paint()
'KPD-Team 2000
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
'Clear the form
Me.Cls
keybd_event VK_H, 0, 0, 0 ' press H
keybd_event VK_H, 0, KEYEVENTF_KEYUP, 0 ' release H
keybd_event VK_E, 0, 0, 0 ' press E
keybd_event VK_E, 0, KEYEVENTF_KEYUP, 0 ' release E
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_O, 0, 0, 0 ' press O
keybd_event VK_O, 0, KEYEVENTF_KEYUP, 0 ' release O
End Sub
Имитация нажатия клавиши
допустим: <Enter> <Tab> <Ctrl+V>
Пользуйтесь поиском на форуме и в интернете, этого полно. Вот пример из API-Guid:
Text1.SetFocus
SendKeys "{Enter}+{Tab}+{Ctrl}+{V}"
а в первом способе, как я понял обрабатывается 4 клавиши:H, E, L, 0.
но вот как ещё бы сочетание клавиш имитировать...
или же как копировать в буфер обмена данные, а потом их вставить в другой проге (игре)???
но вот не всегда правильно и очень странно!!!
допустим не имитирует правильно, допустим буквы както очень странно имитирует....
Код:
Const VK_ALT = 18
Const VK_F4 = 115
keybd_event VK_ALT, 0, 0, 0 ' press Alt
keybd_event VK_F4, 0, 0, 0 ' press F4
keybd_event VK_ALT, 0, KEYEVENTF_KEYUP, 0 ' release Alt
keybd_event VK_F4, 0, KEYEVENTF_KEYUP, 0 ' release F4
Const VK_F4 = 115
keybd_event VK_ALT, 0, 0, 0 ' press Alt
keybd_event VK_F4, 0, 0, 0 ' press F4
keybd_event VK_ALT, 0, KEYEVENTF_KEYUP, 0 ' release Alt
keybd_event VK_F4, 0, KEYEVENTF_KEYUP, 0 ' release F4
Должно работать.
keybd_event asc("q"), 0, 0, 0
keybd_event asc("q"), 0, KEYEVENTF_KEYUP, 0
тут как я понял какая то другая таблица кодов клавиш.
дайте ссылку на эту таблицу.
и как переводить букву в код, который потом буду вставлять в другом месте?
то есть включается программа, я вставляю текст и своей программы,
имитирую нажатие Tab, фокус в той программе переводиться на другое место для ввода текста, снова вставляю данные, имитирую нажатие Enter и та программа запускается.
Цитата: _HemP_
keybd_event asc("q"), 0, 0, 0
keybd_event asc("q"), 0, KEYEVENTF_KEYUP, 0
keybd_event asc("q"), 0, KEYEVENTF_KEYUP, 0
Нет, это не правильно. Так ты получаешь ASCII-код символа, а тебе нужно код клавиши. Т.е. при выполнении твоей задачи тебе надо будет ещё и за раскладкой следить.
Таблица - http://wdh.suncloud.ru/keycodes.htm
Приду с института, попробую написать, то что тебе нужно.
Цитата: Virtuoso
Цитата: _HemP_
keybd_event asc("q"), 0, 0, 0
keybd_event asc("q"), 0, KEYEVENTF_KEYUP, 0
keybd_event asc("q"), 0, KEYEVENTF_KEYUP, 0
Нет, это не правильно. Так ты получаешь ASCII-код символа, а тебе нужно код клавиши. Т.е. при выполнении твоей задачи тебе надо будет ещё и за раскладкой следить.
Таблица - http://wdh.suncloud.ru/keycodes.htm
Приду с института, попробую написать, то что тебе нужно.
Как имитировать нажатие клавиши Е, с интервалом в 0,1 сек?