GetKeyState
From SCAR Divi Manual
Contents
Definition
function GetKeyState(const VKey: Byte): Boolean;
Availability
SCAR Divi 3.35 > Current
Description
Gets the state of a key asynchronously from the active client. This means that it will return true if the key was pressed since the last time you called the function.
Example
begin repeat Wait(500) until GetKeyState(VK_DOWN); WriteLn('Pressed down'); end.
Implementations
IsArrowDown
function IsArrowDown(const Num: Byte): Boolean; begin Result := False; case Num of 0: Result := GetKeyState(VK_UP); 1: Result := GetKeyState(VK_RIGHT); 2: Result := GetKeyState(VK_DOWN); 3: Result := GetKeyState(VK_LEFT); end; end;
IsFKeyDown
function IsFKeyDown(const Num: Byte): Boolean; begin Result := False; if (Num > 0) and (Num < 25) then Result := GetKeyState(VK_F1 + Num - 1); end;
IsNumpadKeyDown
function IsNumpadKeyDown(const Num: Byte): Boolean; begin Result := False; if (Num >= 0) and (Num =< 9) then Result := GetKeyState(VK_NUMPAD0 + Num); end;
IsFunctionKeyDown
function IsFunctionKeyDown(const Key: Byte): Boolean; begin Result := False; case Key of 0: Result := GetKeyState(VK_SHIFT); 1: Result := GetKeyState(VK_CONTROL); 2: Result := GetKeyState(VK_MENU); 3: Result := GetKeyState(VK_LSHIFT); 4: Result := GetKeyState(VK_LCONTROL); 5: Result := GetKeyState(VK_LMENU); 6: Result := GetKeyState(VK_RSHIFT); 7: Result := GetKeyState(VK_RCONTROL); 8: Result := GetKeyState(VK_RMENU); end; end;