C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Нажатие клвиш в другом приложении
Borgir
Отправлено: 21.11.2003, 11:18


Дежурный стрелочник

Группа: Участник
Сообщений: 48



Тут уже нечто подобное обсуждалось. Но там надо было нажать кнопку на чужой форме. А мне надо просто сэмулировать нажатие горячей клавиши (например F2) в чужом приложении. Как это сделать? Хэндл окна я нахожу. Пробовал послать ему
CODE
SendMessage(Handle, WM_KEYDOWN,VK_F2,NULL);
SendMessage(Handle,WM_KEYUP,NULL,NULL);

не работает.
xTrim
Отправлено: 21.11.2003, 11:56


Машинист паровоза

Группа: Участник
Сообщений: 208



так работает
CODE

HWND HHH;
...
SendMessage(HHH, WM_KEYDOWN,VK_F2,NULL);
SendMessage(HHH,WM_KEYUP,VK_F2,NULL);
// или SendMessage(HHH,WM_KEYUP,NULL,NULL); тоже работает

а у тебя Handle == Application->Handle скорее всего был.
Gedeon
Отправлено: 21.11.2003, 15:42


Ветеран

Группа: Модератор
Сообщений: 1742



От так от
CODE

SendMessage(Handle,WM_IME_KEYDOWN, VK_F2, 1);


Отредактировано Gedeon — 21/11/2003, 16:45

Вернуться в Вопросы программирования в C++Builder