Главная страница
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.074 c
1-1166458332
Чапаев
2006-12-18 19:12
2007.02.11
Flush после Write


15-1169201986
altex
2007-01-19 13:19
2007.02.11
Защита Приложения.


15-1169438349
Slider007
2007-01-22 06:59
2007.02.11
С днем рождения ! 21 января


15-1169504142
IMHO
2007-01-23 01:15
2007.02.11
Зарегистрированный товарный знак


15-1169180260
Slider007
2007-01-19 07:17
2007.02.11
С днем рождения ! 19 января