Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];

Вниз

Hook   Найти похожие ветки 

 
Dark ©   (2007-11-26 23:27) [0]

Привижите пожалуйста пример кода для перехвата клавиши нажатой на клавиатуре! Или обьясните, плз, как называется переменная в которой Windows хранит нажатую клавишу.


 
Dark ©   (2007-11-26 23:32) [1]

Ну или как записать нажатую клавишу в переменную, даже если моё приложение неактивно? Думаю, что через dll, но представляю это смутно


 
Джо ©   (2007-11-26 23:38) [2]

SetWindowsHookEx и читать все Remarks.


 
Германн ©   (2007-11-27 01:28) [3]


> Или обьясните, плз, как называется переменная в которой
> Windows хранит нажатую клавишу.

Она никак не называется ибо такой переменной нет вообще.


 
Джо ©   (2007-11-27 02:21) [4]

А чтобы получить текущее состояние клавиш воспользуйтесь GetAsyncKeyState.


 
Dark ©   (2007-11-27 16:58) [5]

Спасибо


 
Dark ©   (2007-11-28 20:50) [6]

if TMsg(Pointer(lParam)^).message = WM_RBUTTONDOWN then
Прокомментируйте эту строку. Я так понимаю этим способом можно перехватывать нажатия?


 
turbouser ©   (2007-11-28 21:01) [7]


> Dark ©   (28.11.07 20:50) [6]

RBUTTON - правая кнопка мыши.


 
Dark ©   (2007-11-28 21:24) [8]

Ну это понятно)) меня интересует Pointer, так в системе называется мышь? lparam - ? TMsg - ?


 
turbouser ©   (2007-11-28 21:43) [9]


> Dark ©   (28.11.07 21:24) [8]

Без минимального багажа знаний и в такие дебри?
Не жди помощи...


 
Johnmen ©   (2007-11-28 21:45) [10]


>  так в системе

В какой системе?


 
Dark ©   (2007-11-29 11:39) [11]


>
> Без минимального багажа знаний и в такие дебри?
> Не жди помощи...

Ты так добр


 
Джо ©   (2007-11-29 14:59) [12]

> [11] Dark ©   (29.11.07 11:39)
>
> >
> > Без минимального багажа знаний и в такие дебри?
> > Не жди помощи...
>
> Ты так добр

А товарищ совершенно прав.
Нельзя разбирать стилистические красоты Набокова, не выучив букварь.


 
Джо ©   (2007-11-29 15:02) [13]

Что же касается строки
if TMsg(Pointer(lParam)^).message = WM_RBUTTONDOWN
То это просто проверка кода нажатой клавиши, сохраненной в одном из полей структуры TMsg. Причем структура передается по указателю, представленному значением DWord, поэтому его приходится сначала привести к указателю, потом его разыменовать и уже потом привести к TMsg.
Никакого отношения к «перехвату» не имеет, это банальный букварь.


 
Amoeba ©   (2007-11-29 15:09) [14]

Hooks - аспекты реализации.
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=548
или здесь
http://delphimaster.net/view/2-1196108827/


 
Dark ©   (2007-11-30 12:55) [15]


> Джо ©


> Amoeba ©

Я знал, что тут есть хорошие люди! Спасибо.


 
Denis__ ©   (2007-11-30 13:15) [16]


> Dark ©   (30.11.07 12:55) [15]

А ты не знал, что на сайте есть статьи, которые тоже написаны хорошими людьми?



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

Форум: "Начинающим";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.042 c
9-1164018658
Ярослав Ерёменко
2006-11-20 13:30
2007.12.23
Алгоритм отрисовки тайлов методом альфа-блендинга


15-1195558165
Vlad Oshin
2007-11-20 14:29
2007.12.23
Таскать объект по странице.


15-1195544501
DelphiN!
2007-11-20 10:41
2007.12.23
VCL c потдержкой Unicode для Delphi6


2-1196509892
WFS
2007-12-01 14:51
2007.12.23
Как сделать из цветного черно белое изображение


15-1195904689
Petr V. Abramov
2007-11-24 14:44
2007.12.23
Болтовня по Skype





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский