Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.11;
Скачать: CL | DM;

Вниз

Как послать кобинацию клавишь?   Найти похожие ветки 

 
Veche   (2007-01-25 18:31) [0]

Доброго времени суток всем. Мне требуется передать приложению (допустим iTunes), хэндл которого я знаю, комбинацию клавишь, типа "CTRL+UP". Как передать отдельное нажатие понятно. Делаю так:

PostMessage(ituneshandle, WM_KEYDOWN, VK_UP, 0);//нужно как нажать так и отпустить клавишу
PostMessage(ituneshandle, WM_KEYUP, VK_UP, 0);

А вот с комбинацией не разобрался... По логике вещей, нужно делать так:

PostMessage(ituneshandle, WM_KEYDOWN, VK_CONTROL, 0);/
PostMessage(ituneshandle, WM_KEYDOWN, VK_UP, 0);

PostMessage(ituneshandle, WM_KEYUP, VK_UP, 0);
PostMessage(ituneshandle, WM_KEYUP, VK_CONTROL, 0);

Но может я чего-то не понимаю. Поделитесь своими знаниями...


 
Veche   (2007-01-26 09:55) [1]

Я был об этом форуме лучшего мнения =(

keybd_event. С помощью этой команды легко имитируется CTRL+UP. Вот рабочий код:

AppActivate(Pchar("iTunes"));
keybd_event(VK_CONTROL,55,KEYEVENTF_EXTENDEDKEY or 0, 0);
keybd_event(VK_UP,55,KEYEVENTF_EXTENDEDKEY or 0, 0);

keybd_event(VK_UP,55,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL,55,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);

AppActivate - пользовательская функция, которая переключает фокус на нужное приложение (надеюсь правильно написал =) )


 
Юрий Зотов ©   (2007-01-26 10:10) [2]

Еще CTRL+UP легко имитируется с помощью F1. Потому что там описаны параметры сообщений.

А KEYEVENTF_EXTENDEDKEY or 0 - это не круто. Это ОЧЕНЬ круто.



Страницы: 1 вся ветка

Текущий архив: 2007.02.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.075 c
1-1166169404
ZeK
2006-12-15 10:56
2007.02.11
OnMeasureItem и Items.Objects


2-1169474454
Ega23
2007-01-22 17:00
2007.02.11
Как офицально называется MSDE под MS SQL 2005?


2-1169480316
Jimmy
2007-01-22 18:38
2007.02.11
Узнать, имеет ли Edit фокус


2-1169715577
user51
2007-01-25 11:59
2007.02.11
путь е екзешнику по окну


2-1169538907
daser
2007-01-23 10:55
2007.02.11
Как написать консольное приложение с передачей ему параметров?