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

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

Как отловить нажатие комбинации клавиш в системе? [D6, D7, Win2k, WinXP]


DELORAC ©   (2005-09-27 16:50:00) 

Как отловить нажатие комбинации клавиш в системе?
Если не очень сложно, помогите с кодом, плиз...
Заранее спасибо!


DELORAC   (2005-09-28 10:28:00) [1]

Да, мои комбинации клавиш...
Спасибо, разобрался!


ShiFT   (2005-09-28 06:37:00) [2]

> DELORAC ©   (27.09.05 16:50)
> Как отловить нажатие комбинации клавиш в системе?
> Если не очень сложно, помогите с кодом, плиз...


тебе твои комбинации клавиш отловить надо??
если да то:
 protected
   procedure hotykey( var msg: TMessage); message WM_HOTKEY;
.....
var
 id : Integer;
.....
procedure TForm1.hotykey(var msg: TMessage);
begin
 if msg.WParam = id then ShowMessage('Ctrl + Q!');
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
 id := GlobalAddAtom( 'hotkey');
 RegisterHotKey( handle, id, mod_control, 81);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
 UnRegisterHotKey( handle, id);
end;


если нет то Хук.


ANB   (2005-09-27 17:00:00) [3]

Хук придется ставить на клавиатуру. Затем ловить кнопки по одной и проверять на комбинацию. Читать статью на этом сайте. Когда поймешь и наступишь на грабли из примера - приходи сюда, поправим.


Наверх

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