Вопросы и Ответы
10. Как считать состояние и программно переключить Caps Lock, Num Lock и Scroll Lock?
Для этого надо воспользоваться процедурами API:
procedure GetKeyboardState(var KeyState:
TKeyboardState); и
procedure SetKeyboardState(var KeyState: TKeyboardState);
которые возвращают и устанавливают, соответственно, состояния всех клавиш. Некоторые коды клавиш приведены в таблице:
Клавиша | Код | Клавиша | Код | Клавиша | Код |
Caps Lock | 020 | Shift | 016 | Insert | 045 |
NumLock | 144 | Contrl | 017 | Delete | 046 |
Scroll Lock | 145 | Alt | 018 | Tab | 009 |
Пример:
Меняем состояния клавиш Caps Lock, Num Lock и Scroll Lock на противоположное:
............
VAR
KS: TKeyboardState; GetKeyboardState(KS); end;
............
begin
KS[020] := KS[020] XOR 1;
KS[144] := KS[144] XOR 1;
KS[145] := KS[145] XOR 1;
SetKeyboardState(KS);
...предыдущая страница следующая...
оглавление