njorgen Novato

Registrado: Terça-Feira, 2 de Agosto de 2011 Mensagens: 1
|
Enviada: Ter Ago 02, 2011 12:45 pm Assunto: problema com hook |
|
|
Estou desenvolvendo um jogo e percebi que ao capiturar as teclas eu obitive um problema, ao capiturar ele capiturava 2 vezes, exemplo: eu digitava "oi", ele capiturava "ooii"
Ainda to aprendendo api. segue o código:
| Código: | var
GHook: HHook;
function KeyboardHookProc(Code: Integer; WordParam: Word; LongParam: LongInt): LongInt; stdcall;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
GHook:=SetWindowsHookEx(WH_KEYBOARD, @KeyboardHookProc, HInstance, GetCurrentThreadId());
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
UnHookWindowsHookEx(GHook);
end;
function KeyboardHookProc(Code: Integer; WordParam: Word; LongParam: LongInt) : LongInt;
begin
case WordParam of //apenas para ver o que o hook está capiturando
vk_Space: form1.Memo1.Text := form1.Memo1.Text + ' ';
vk_Up: form1.Memo1.Text := form1.Memo1.Text + 'UP';
end;
Result:=0;
end; |
|
|