Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.26;
Скачать: CL | DM;

Вниз

Hotkey во всех прогах   Найти похожие ветки 

 
RustiK ©   (2003-10-28 14:14) [0]

У меня такой вопрос как сделать Hotkey который бы ловился глобально и срабатывал в любом активном приложении.
Например я запустил Word нажал Alt+Z и у меня напечаталось "Вы нажали Alt+Z", а потом открыл какой-нибудь другой редактор и нажал Alt+Z и опять бы у меня напечаталась бы надпись "Вы нажали Alt+Z". И так в любой программе которую бы я не открыл.


 
Narayan ©   (2003-10-28 15:18) [1]


procedure TForm1.FormCreate(Sender: TObject);
begin
RegisterHotKey(Form1.Handle, 131, 0, VK_SCROLL);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
UnRegisterHotKey(Form1.Handle, 131);
end;

131 - эт любое твоё (идентификатор)
VK_SCROLL - это скроллок (бывают и другие ;-) )


 
RustiK ©   (2003-10-28 15:29) [2]

этот HotKey будет ловиться глобально, а срабатывать только в своей форме
а мне нужно что бы срабатывало в том приложении в котором я на данный момент работаю


 
Narayan ©   (2003-10-28 16:13) [3]


...
private
procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
...
procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin
// получаешь дескриптор активного окна
// и посылаешь ему сообщение (WM_SETTEXT в твоём случае)
end;
...


 
RustiK ©   (2003-10-29 09:43) [4]

Спасибо.
А не нужно ли мне получать еще и хэндл какого-либо Edita этого активного окна?


 
RustiK ©   (2003-10-30 08:56) [5]

Кто-нибудь подскажет мне как хэндл чилда определить?


 
RustiK ©   (2003-10-31 10:44) [6]

Удалено модератором
Примечание: Offtopic



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

Текущий архив: 2003.12.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
7-86564
Ал
2003-10-22 10:14
2003.12.26
Как узнать, что запущен скринсэйвер и корректно завершить его?


14-86533
Aga
2003-11-30 12:56
2003.12.26
RegMonitor


7-86574
The X
2003-10-21 19:44
2003.12.26
Определение сер. # HDD (заводского)


1-86378
yong
2003-12-15 14:48
2003.12.26
Почтовая программа


3-86319
Kramar
2003-12-01 22:35
2003.12.26
DBGrid