Как считать состояние и программно переключить 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; 
 begin
 
GetKeyboardState(KS);
 KS[020] := KS[020] XOR 1;
 KS[144] := KS[144] XOR 1;
 KS[145] := KS[145] XOR 1;
 SetKeyboardState(KS); 
 
end; 

Последние комментарии

  • Забугоный блогер решил поделиться методом правильной уборки квартиры. модели секс смотреть смотреть бесплатно , фото порно взрослых и пожилых женщин http://devstvennici-porno.ru/
  • Hello. You are not right. I am assured. I can prove it. Write to me in PM, we will communicate. Welcome to my project skjdfbhjhbdhsy44fbdfhjdbfv
  • http://bit.ly/2ILfynJ - Рецепты

Счетчики