![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить ASKII код нажатой клавиши ? [D6, Win95/98, WinME, NT4, Win2k, WinXP]
fag2000@ok.ru © (2002-03-13 14:02:00)Привет всем!
Как получить ASKII код нажатой клавиши при обработке сообщения WM_KEYDOWN?
Заранее благодарен.
fag2000@ok.ru (2002-03-13 17:32:00) [1]А если это в Hooke далается для чужого приложения?
troits (2002-03-13 14:57:00) [2]У меня получилось вот так.
procedure TForm1.WMKeyDown(var Message: TWMKeyDown);
var
ScanCode: Cardinal;
KeyBoardState: TKeyBoardState;
Buf: array[0..2] of char;
begin
ZeroMemory(@Buf, 3);
GetKeyboardState(KeyBoardState);
ScanCode := MapVirtualKey(Message.CharCode, 0);
if ToAscii(Message.CharCode, ScanCode, KeyBoardState, Buf, 0) > 0 then
Label1.Caption := string(Buf[0]);
end;
troits (2002-03-13 14:07:00) [3]Посмотри help по ф-ции ToAscii