Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как поставить hooks для сочетания клавиш [D7, WinXP]


Dober_m@N ©   (2003-02-14 20:51:00) 

Как с 1-ой клавишей понятно(писать не надо) а вот для 2-х , 3-х т. е. к примеру для Alt + Левая кнопка мыши пишу : (VK_MENU) + (WM_LBUTTONUP) или (VK_MENU) and (WM_RBUTTONUP) - неработает,
как правильно???


Dober_m@N   (2003-02-15 13:03:00) [1]

Дошло !!! всё заработало. Спасибо, за терпеливось :))


Song   (2003-02-15 12:57:00) [2]

Ещё можно попробовать через тот же GetAsyncKeyState() или даже лучше - GetKeyState(). Тогда получится у Вас цепочка IF"ов или сравнений, как Вы и хотели.


Song   (2003-02-15 12:56:00) [3]

Я же сказал: GetKeyboardState(). Она возвращает таблицу всех клавиш с их состояними. Вот по состояниям и суди.


Dober_m@N   (2003-02-15 12:54:00) [4]

да ;) как тогда надо записывать Ctrl + Alt + T например?


Song   (2003-02-15 12:49:00) [5]

Дак никак. В один момент времени передаётся только одна клавиша. Клавиши регистры (Shift, Alt and etc) могут рассматриватьс с ней как совокупность флагов.
А Вы думали что типа того можно
IF (Key=VK_CONTROL) and (Key=VK_MENU) and (Key=VK_DELETE) then ...

? :-))


Dober_m@N   (2003-02-15 12:31:00) [6]

да нет :-) как писать(соединять) 2 и более клавиш использовать "+" , "and" или ещё чего ?


Song   (2003-02-15 12:23:00) [7]

GetKeyboardState()


Dober_m@N   (2003-02-15 12:19:00) [8]

OK, а как писать сочетания клавиш Alt + Левая кнопка мыши или например Ctrl + Alt + D ?


Song   (2003-02-15 11:48:00) [9]

GetAsyncKeyState()


Наверх

Титульная страница Поиск, карта сайта Написать письмо