Вниз
Скачать: CL | DM;

Работа с HOTKEY =    Найти похожие ветки 

← →
Crystalis   (2007-11-30 10:13) [0]

Трабла с хот-кеями в XP.
недавно делал проект, где задействованы хот-кеи, вот участок:

RegisterHotKey(handle,id_z,0,90);
id_z:=GlobalAddAtom("hotkey");
RegisterHotKey(handle,id_x,0,88);
id_x:=GlobalAddAtom("hotkey");
RegisterHotKey(handle,id_c,0,67);
id_c:=GlobalAddAtom("hotkey");

кстати, этот пример использование хот-кеев, нашёл гдето тут на форумах ;)
В win 2003 сервер, работало всё прекрасно, но у пользователей XP, работал тока 1 хот кей....
поставил себе тоже XP, и сам убедился.....работает только споследний обьявленый хот кей,
т.е. если, приписать RegisterHotKey(handle,id_b,0,66);, то будет только отклик на нажатие b.
Ну а вот пример обработки хоткея:

procedure TForm1.hotykey(var msg:TMessage);
begin

     if   (msg.LParamHi=90) then
  begin
  form1.Edit1.Text := form1.Edit1.Text + "z";
  end;
   if   (msg.LParamHi=88) then
  begin
  form1.Edit1.Text := form1.Edit1.Text + "x";
  end;
   if   (msg.LParamHi=67) then
  begin
  form1.Edit1.Text := form1.Edit1.Text + "c";
  end;
end;

--------------------------------------------------------------
Может кто подскажет мне ошибку ?? или посоветует другой способ работы с хоткеями.
Заранее благодарен.


← →
Leonid Troyanovsky ©   (2007-12-01 14:50) [1]


> Crystalis   (30.11.07 10:13)  

> Может кто подскажет мне ошибку ??

Во-первых, id почему-то устанавливается до использования.
Во-вторых, три переменных не нужны, бо значение, возвращаемое
GlobalAddAtom, одно и тоже.

Ну, а в-третьих:

If the window identified by the hWnd parameter already registered a hot key with the same identifier as that specified by the id parameter, the new values for the fsModifiers and vk parameters replace the previously specified values for these parameters.

> или посоветует другой способ работы с хоткеями.

See TAction.

--
Regards, LVT.


← →
Crystalis   (2007-12-01 19:44) [2]

спасибо



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
2-1215411081
iSODEv
2008-07-07 10:11
2008.08.10
мерцает PaintBox


15-1214390321
Rox
2008-06-25 14:38
2008.08.10
Сохранение информации


3-1203656748
ari_9
2008-02-22 08:05
2008.08.10
MS SQL 2005. можно передать в Raiserror значение функции ?


2-1215502263
Олег4
2008-07-08 11:31
2008.08.10
TPopupMenu


2-1215687715
pathfinder
2008-07-10 15:01
2008.08.10
Поля классов.




   Наверх