Форум: "WinAPI";
Текущий архив: 2003.03.24;
Скачать: [xml.tar.bz2];
ВнизКак перехватить и подменить код нажатой клавиши? Найти похожие ветки
← →
velk (2003-01-27 15:37) [0]Как перехватить и подменить код нажатой клавиши?
← →
Axis_of_Evil (2003-01-27 15:39) [1]хук
← →
velk (2003-01-27 15:46) [2]Понимаю сделаля hook поймал клавишу
а как теперь ее подставить вместо той которую поймал....
причем это надо сделать не только для какой то формы а для приложения в целом
← →
velk (2003-01-27 15:51) [3]Function KeybProc(Code : Integer;W : wParam;L : lParam) :Integer; stdcall;
var s:string;
Begin
if Code<0 then
Result:=CallNextHookEx(KeybHook,Code,W,L)
Else
Begin
определили а как подменить?
s:=IntToStr(W);
ShowMessage(s);
Result:=0;
End;
End;
procedure TForm1.FormCreate(Sender: TObject);
begin
KeybHook:=SETWINDOWSHOOKEx(WH_KEYBOARD,@KeybProc,hInstance,0);
end;
← →
Axis_of_Evil (2003-01-27 16:02) [4]wParam := подмена (номер символа кажись)
и inherited в конец процедуры, думаю - для дальнейшей обработки
← →
velk (2003-01-27 16:10) [5]Так это надо еще как то отслеживать сообщения что ли?
← →
velk (2003-01-27 16:23) [6]/
← →
Axis_of_Evil (2003-01-27 16:27) [7]1)а если ловить WM_Char
2)
Function KeybProc(Code : Integer;W : wParam;L : lParam) :Integer; stdcall;
var s:string;
Begin
if Code<0 then
Result:=CallNextHookEx(KeybHook,Code,W,L)
Else
Begin
W := номер символа;
Result:=0;
End;
End;
Вот только при вводе в Edit и тд не работает
← →
velk (2003-01-27 16:29) [8]Мда спасибо
но мне как раз надо что бы в edit срабатывало
← →
Song (2003-01-27 21:12) [9]Чтобы в edit срабатывало надо WH_GETMESSAGE и сравнивать пришедший хэндл с хэндлом едита и делать соответствующий вывод.
← →
velk (2003-01-28 07:59) [10]Может у кого есть пример?
Помогите уж пожалуйста
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.03.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c