|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
11.08.2009, 13:17 | #1 |
Новичок
Джуниор
Регистрация: 11.08.2009
Сообщений: 3
|
Эмуляция нажатия клавиши
Здравствуйте!
Нужно написать код, чтобы в Активном окне (любом) при нажатии определенной клавиши (например v) эмулировалось попеременное нажатие двух клавиш с определенным промежутком времени. Например, держу клавишу "v" - эмулируется нажатие поочередно "g" "h", отпускаю - эмуляция закончена. Как это реализовать? PS: Я в программировании чайник, а код нужен для любимой игрушки. |
11.08.2009, 13:39 | #2 |
Участник клуба
Регистрация: 28.11.2007
Сообщений: 1,521
|
Самое простое, что приходит на ум... Так это сделать так:
Код:
Всегда рад помочь!
|
11.08.2009, 14:10 | #3 |
Новичок
Джуниор
Регистрация: 11.08.2009
Сообщений: 3
|
Но этот код применим только к форме TForm1, а как сделать чтобы работало в другом приложении (текущем)?
|
11.08.2009, 15:06 | #4 |
Участник клуба
Регистрация: 19.01.2009
Сообщений: 1,457
|
А уж долго зарегистрировать горячию клавишу?
Код:
Код:
Код:
Код:
|
11.08.2009, 20:12 | #5 |
Новичок
Джуниор
Регистрация: 11.08.2009
Сообщений: 3
|
Всем спасибо! Программку состряпала, теперь буду ее шлифовать.
Еще вопросы: Как свернуть программу в трей? Как привязать ее к определенному процессу? (программе) Где можно посмотреть про это? |
12.08.2009, 14:20 | #6 | ||
Участник клуба
Регистрация: 28.11.2007
Сообщений: 1,521
|
Цитата:
Цитата:
Всегда рад помочь!
|
||
01.12.2009, 11:28 | #7 |
Пользователь
Регистрация: 01.12.2009
Сообщений: 13
|
Здравствуйте. У меня вопрос:
вот код эмуляции буквы: keybd_event(ord('E'), MapVirtualKey(ord('E'), 0), 0, 0); keybd_event(ord('E'), 0, KEYEVENTF_KEYUP, 0); вот для других кнопок: keybd_event(VK_TAB, MapVirtualKey(VK_TAB, 0), 0, 0); keybd_event(VK_TAB, 0, KEYEVENTF_KEYUP, 0); и кроме tab так можно нажимать и другие кнопки. А как же эмулировать ТОЧКУ. Или тире, запятую... Но главное сейчас - это точка. Вот мне нужно поставить точку, например, в блокноте, или в адресной строку браузера. |
01.12.2009, 11:30 | #8 |
Пользователь
Регистрация: 01.12.2009
Сообщений: 13
|
Думал через del на дополнительной клавиатуре, тот что справа (он тоже точку рисует), дык и его незнаю как эмулировать. Только обычный del работает. Может хоть его код напишите.
|
01.12.2009, 11:51 | #9 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
имхо, лучше ищите хэндл блокнота и работайте через sendmessage или postmessage:
Код:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
01.12.2009, 12:09 | #10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Одна тема - один автор.
I'm learning to live...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Эмуляция клавиши и БД | Патрон | БД в Delphi | 7 | 20.11.2008 22:26 |
Эмуляция нажатия нескольких клавиш | -=Shad0www | Общие вопросы Delphi | 3 | 12.05.2008 08:13 |
Эмуляция нажатия кнопки F3 | Dimixis | Помощь студентам | 4 | 17.06.2007 23:42 |
Эмуляция нажатия клавиши при отметке Checkbox | delphi_beginner | Win Api | 3 | 02.06.2007 10:07 |
Эмуляция нажатия клавиши...... | Zoidberg | Win Api | 4 | 11.01.2007 18:44 |