Консультация № 114148
15.12.2007, 16:44
0.00 руб.
0 1 1
Здравствуйте! Скажите пожалуйста, как мне сделать так, чтобы при нажатии button в нужном мне порядке нажимались как бы клавиши на клавиатуре n-нное число раз??? А именно нужно чтобы нажимились следующие клавиши: ~ вверх энтер
Пригодится ли тут таблица http://www.klgtu.ru/ru/students/literature/inf_asu/80.html ??

Обсуждение

Неизвестный
16.12.2007, 15:47
общий
это ответ
Здравствуйте, Морозов Михаил Иванович!

Есть несколько способов, наиболее универсальный:

Нажать клавишу: keybd_event(vkcode, scancode, 0, 0)
Отпустить клавишу: keybd_event(vkcode, scancode, KEYEVENTF_KEYUP, 0);

где главное vkсode, например для стрелки вверх - VK_UP, enter - VK_RETURN, при этом scancode можно указать 0.

Таблица ASCII вам тоже поможет, так как для алфавитно-цифровой части vkcode совпадает с этой таблтцей - т.е. ~ = $7E. С русской частью только повнимательней с кодировкой - по вашей ссылке м.б. не Win-кодировка я не проверял.

Итого:

keybd_event($7E, 0, 0, 0);
keybd_event($7E, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_UP, 0, 0, 0);
keybd_event(VK_UP, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_RETURN, 0, 0, 0);
keybd_event(VK_RETURN, 0, KEYEVENTF_KEYUP, 0);
Форма ответа