Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.10;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.013 c
2-1215686856
TUserClass
2008-07-10 14:47
2008.08.10
Установить поле соответствия (Lookup := true) в DataSet ...


2-1215590222
kyn66
2008-07-09 11:57
2008.08.10
Скриншот окна броузера


2-1215104684
blazerad
2008-07-03 21:04
2008.08.10
Как заставить БД Делфи работать на другом компе.


15-1214221429
Хохол
2008-06-23 15:43
2008.08.10
Компоненты для работы с Firebird


15-1214169103
JetuS
2008-06-23 01:11
2008.08.10
Сниффер ICMP-пакетов