Чтение и установка клавиши NumLock
VAR KS : TKeyboardState; ... GetKeyboardState(KS); IF Odd(KS[VK_NUMLOCK]) THEN {NumLock включен}
KS[VK_NUMLOCK] := KS[VK_NUMLOCK] XOR 1; {переключение NumLock} KS[VK_NUMLOCK] := KS[VK_NUMLOCK] OR 1; {включение NumLock} KS[VK_NUMLOCK] := KS[VK_NUMLOCK] AND (NOT 1); {выключение NumLock}
SetKeyboardState(KS);
Таким же образом:
... VK_CAPITAL ... VK_SCROLL ... VK_INSERT
Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript. предлагает немного другой способ:
var
abKeyState: array [0..255] of byte;begin
GetKeyboardState( Addr( abKeyState[ 0 ] ) ); abKeyState[ VK_NUMLOCK ] := abKeyState[ VK_NUMLOCK ] or $01; SetKeyboardState( Addr( abKeyState[ 0 ] ) );