![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Hook
Dark © (2007-11-26 23:27:00)Привижите пожалуйста пример кода для перехвата клавиши нажатой на клавиатуре! Или обьясните, плз, как называется переменная в которой Windows хранит нажатую клавишу.
Denis__ (2007-11-30 13:15:00) [1]
> Dark © (30.11.07 12:55) [15]
А ты не знал, что на сайте есть статьи, которые тоже написаны хорошими людьми?
Dark (2007-11-30 12:55:00) [2]
> Джо ©
> Amoeba ©
Я знал, что тут есть хорошие люди! Спасибо.
Amoeba (2007-11-29 15:09:00) [3]Hooks - аспекты реализации.
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=548
или здесь
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1196108827&n=18
Джо (2007-11-29 15:02:00) [4]Что же касается строки
if TMsg(Pointer(lParam)^).message = WM_RBUTTONDOWN
То это просто проверка кода нажатой клавиши, сохраненной в одном из полей структуры TMsg. Причем структура передается по указателю, представленному значением DWord, поэтому его приходится сначала привести к указателю, потом его разыменовать и уже потом привести к TMsg.
Никакого отношения к «перехвату» не имеет, это банальный букварь.
Джо (2007-11-29 14:59:00) [5]> [11] Dark © (29.11.07 11:39)
>
> >
> > Без минимального багажа знаний и в такие дебри?
> > Не жди помощи...
>
> Ты так добр
А товарищ совершенно прав.
Нельзя разбирать стилистические красоты Набокова, не выучив букварь.
Dark (2007-11-29 11:39:00) [6]
>
> Без минимального багажа знаний и в такие дебри?
> Не жди помощи...
Ты так добр
Johnmen (2007-11-28 21:45:00) [7]
> так в системе
В какой системе?
turbouser (2007-11-28 21:43:00) [8]
> Dark © (28.11.07 21:24) [8]
Без минимального багажа знаний и в такие дебри?
Не жди помощи...
Dark (2007-11-28 21:24:00) [9]Ну это понятно)) меня интересует Pointer, так в системе называется мышь? lparam - ? TMsg - ?
turbouser (2007-11-28 21:01:00) [10]
> Dark © (28.11.07 20:50) [6]
RBUTTON - правая кнопка мыши.
Dark (2007-11-28 20:50:00) [11]if TMsg(Pointer(lParam)^).message = WM_RBUTTONDOWN then
Прокомментируйте эту строку. Я так понимаю этим способом можно перехватывать нажатия?
Dark (2007-11-27 16:58:00) [12]Спасибо
Джо (2007-11-27 02:21:00) [13]А чтобы получить текущее состояние клавиш воспользуйтесь GetAsyncKeyState.
Германн (2007-11-27 01:28:00) [14]
> Или обьясните, плз, как называется переменная в которой
> Windows хранит нажатую клавишу.
Она никак не называется ибо такой переменной нет вообще.
Джо (2007-11-26 23:38:00) [15]SetWindowsHookEx и читать все Remarks.
Dark (2007-11-26 23:32:00) [16]Ну или как записать нажатую клавишу в переменную, даже если моё приложение неактивно? Думаю, что через dll, но представляю это смутно