Информация о состоянии клавиатуры в Delphi

Нажаты ли клавиши Shift, Ctrl b узнать прочую информацию о клавиатуре можно с помощью стандартных функций:

GetKeyState, GetAsyncKeyState, GetKeyboardState.

Пример использования этих функций:

function AltKeyDown : boolean;
begin
  result:=(Word(GetKeyState(VK_MENU)) and $8000)<>0;
end;
function CtrlKeyDown : boolean;
begin
  result:=(Word(GetKeyState(VK_CONTROL)) and $8000)<>0;
end;
 
function ShiftKeyDown : boolean;
begin
  result:=(Word(GetKeyState(VK_SHIFT)) and $8000)<>0;
end;

А заодно и для клавиш переключателей:

function CapsLock : boolean;
begin
  result:=(GetKeyState(VK_CAPITAL) and 1)<>0;
end;
 
function InsertOn : boolean;
begin
  result:=(GetKeyState(VK_INSERT) and 1)<>0;
end;
 
function NumLock : boolean;
begin
  result:=(GetKeyState(VK_NUMLOCK) and 1)<>0;
end;
 
function ScrollLock : boolean;
begin
  result:=(GetKeyState(VK_SCROLL) and 1)<>0;
end;
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (11 оценок, среднее: 5,00 из 5)
Загрузка...
Добавить комментарий