|
| | |
|
Отлавливаем нажатие калавиш клавиатуры.
Уроки програмирования на языке Delphi.
В этом коротком уроке я покажу вам, как перехватывать нажатия кнопок клавиатуры. Пригодиться он для написания простенького клавиатурного шпиона, который бы отлавливал нажатия клавиш и вёл лог. Можно написать просто небольшой прикол типа если пользователь нажимает клавишу "Ф" то на экране появляется "И". Короче я думаю фантазия у вас работает нормально поэтому применение этому коду вы найдете.
Начинаем кодить, нам понадобиться: Компонент Timer с закладки System и компонент Label с закладки Standart. Выделяем Timer, создаем, обработчик событий OnTime и прописываем в нем следующий код:
if getasynckeystate($1b)<>0 then Label1.Caption:='Вы нажали ESC'
Вот что должно получиться:
procedure TForm1.Timer1Timer(Sender: TObject); begin if getasynckeystate($1b)<>0 then Label1.Caption:='Вы нажали ESC' end;
В данном примере мы перехватываем нажатие клавиши ESC во всем Windows и побарабану активна или нет наша программа. Используем мы здесь Api функцию getasynckeystate, в качестве параметра ей нужно указать виртуальный код клавиши, котрую хотим отлавливать. В нашем случае это Esc виртуальный код $1b. Все виртуальные коды клавиш приведены ниже:
Да чуть не забыл, свойство Interval у компонента Timer меняем на 1
vk_lbutton = $01; vk_rbutton = $02; vk_cancel = $03; vk_mbutton = $04; vk_back = $08; vk_tab = $09; vk_clear = $0c; vk_return = $0d; vk_shift = $10; vk_control = $11; vk_menu = $12; vk_pause = $13; vk_capital = $14; vk_escape = $1b; vk_space = $20; vk_prior = $21; vk_next = $22; vk_end = $23; vk_home = $24; vk_left = $25; vk_up = $26; vk_right = $27; vk_down = $28; vk_select = $29; vk_print = $2a; vk_execute = $2b; vk_snapshot = $2c; vk_insert = $2d; vk_delete = $2e; vk_help = $2f; >> vk_a - vk_z такие же, как и их ascii-эквиваленты: 'a' - 'z' ($41 - $5A)<< >> vk_0 - vk_9 такие же, как и их ascii-эквиваленты: '0' - '9' ($30 - $39)} vk_numpad0 = $60; vk_numpad1 = $61; vk_numpad2 = $62; vk_numpad3 = $63; vk_numpad4 = $64; vk_numpad5 = $65; vk_numpad6 = $66; vk_numpad7 = $67; vk_numpad8 = $68; vk_numpad9 = $69; vk_multiply = $6a; vk_add = $6b; vk_separator = $6c; vk_subtract = $6d; vk_decimal = $6e; vk_divide = $6f; vk_f1 = $70; vk_f2 = $71; vk_f3 = $72; vk_f4 = $73; vk_f5 = $74; vk_f6 = $75; vk_f7 = $76; vk_f8 = $77; vk_f9 = $78; vk_f10 = $79; vk_f11 = $7a; vk_f12 = $7b; vk_f13 = $7c; vk_f14 = $7d; vk_f15 = $7e; vk_f16 = $7f; vk_f17 = $80; vk_f18 = $81; vk_f19 = $82; vk_f20 = $83; vk_f21 = $84; vk_f22 = $85; vk_f23 = $86; vk_f24 = $87; vk_numlock = $90; vk_scroll = $91;
До встречи www.delphiexpert.ru
|
Категория: DELPHI | Добавил: SeM (09.04.2011)
|
Просмотров: 867
| Рейтинг: 0.0/0 |
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
| |
| | |
|
|
| Коменнтарии
| |
Извиняюсь, заработал. Спасибо за урок
Давайте помогу разобраться ? вы хотите что бы когда выбиралась станция сразу начинала проигрывать? скиньте исходник или как лучше связаться с вами?
Нифига не робит... Кто знает как сделать чтобы на жесткий жертвы сохранял.. ISQ 606017777
|
|
|
| Отзывы Фото
| |
6 микр. Красивое место.... Старый музей но щас его перенесли... Фотография под горы Красивое фото!!! |
|
|