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

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

Глобальный перехват нажатия комбинации клавиш [D7]


zero-g ©   (2005-04-26 16:07:00) 

Доброго времени суток...

У меня такой вопрос... Как поймать нажатия комбинации клавиш в винде, независимо от того в какое преложение активно вданный момент?

Я как понимаю, на форму бросаем таймер, с интервалом допустим в пол сикунды, а уже обработке проверяем нажати ли данная комбинаци или нет...
Как это сделать???
Надо поймать Ctr+Alt+S


Просто Джо   (2005-04-27 01:54:00) [1]

А что, лень было прочитать справку по функции RegisterHotKey, блин? В функцию передается хэндл окна, которому будет посылаться сообщение WM_HOTKEY. Лови это сообщение и делай в обработчике свои темные делишки.


Eraser   (2005-04-27 01:05:00) [2]

zero-g ©

Почитай Рихтера. Особенно "Глава 26 - Оконные сообщения".


zero-g   (2005-04-27 00:57:00) [3]

Скажите пожалуйста.
Допустим я зарегистрирую быстрые клавиши через RegisterHotKey, а как мне потом в приложении определить нажаты они или нет...
Проблема в том, что есть преложение, по нажатию быстрых клавиш, в котором выполняется определенная процедура...

Если можно, то поподробней пожалуйста...

Просто я никогда не делал это раньше...

Зарание спасибо.


Юрий Зотов   (2005-04-26 20:38:00) [4]

> alpet ©   (26.04.05 18:34) [2]

В вопросе было сказано: "независимо от того в какое преложение активно вданный момент". Проверьте, работает ли у Вас именно так.

> zero-g

Или RegisterHotKey, или глобальный хук. Первое гораздо проще.


Eraser   (2005-04-26 20:18:00) [5]

VVV-First
Нет ну это какая-то .................


Эт точно!

zero-g ©

RegisterHotKey.


alpet   (2005-04-26 18:34:00) [6]


> VVV-First   (26.04.05 16:23) [1]
> хммммм. а я почему-то сразу подумал что тебе надо отловить
>
> Alt-Ctrl-Del^)))))))
>
> > Я как понимаю, на форму бросаем таймер, с интервалом допустим
>
> > в пол сикунды, а уже обработке проверяем нажати ли данная
>
> > комбинаци или нет...


А у меня работает и прекрасно. Что в этом плохого ?


VVV-First   (2005-04-26 16:23:00) [7]

хммммм. а я почему-то сразу подумал что тебе надо отловить
Alt-Ctrl-Del^)))))))

> Я как понимаю, на форму бросаем таймер, с интервалом допустим
> в пол сикунды, а уже обработке проверяем нажати ли данная
> комбинаци или нет...

Нет ну это какая-то .................

И куда же ты запихнешь проверку, того, нажата ли твоя комбинация или нет?:))))))))))))))

Помоему, в этом случаи надо установить глобальный хук (обязательно устанавливать из DLL)


Наверх

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