728x90
GetKeyState 함수는 인수로 전달된 값에 해당하는 Key가 눌려졌는지의 여부를 Toggle 유형의 값으로 반환합니다.
Declare Function GetKeyState Lib "user32" Alias "GetKeyState" (ByVal keyCode As Integer) As Short
▶VB.NET 선언
GetKeyState(65)
▶VB.NET 호출
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern short GetKeyState(int keyCode);
▶C# 선언
GetKeyState(65);
▶C# 호출
위 예제에서 함수를 호출할때 인수로 전달한 65는 'A' Key에 해당하는 Ascii Code값입니다.
결과에서 1이면 눌려졌음을 의미하고 0이면 처음부터 눌려진적이 없거나 1상태에서 다시 한번 눌려졌음을 의미합니다. 만일 확인하고자 하는 key의 Ascii Code값을 모르는 상태라면 다음과 같은 방식으로 함수를 호출할 수 도 있습니다.
GetKeyState(Keys.CapsLock)
Keys.다음에 오는 CapsLock Key에 해당하는 Ascii Code값을 불러와 GetKeyState함수에 인수로 전달하고 있습니다.
728x90
'.NET > Windows API for .NET' 카테고리의 다른 글
IsWindowEnabled - Window 또는 Control의 입력가능 여부 (0) | 2019.08.12 |
---|---|
GetAsyncKeyState - 현재 Key상태 확인 (0) | 2019.08.12 |
GetVersionEx - 운영체제 정보조회 (0) | 2019.08.12 |
GetKeyboardState - Keyboard Key및 Mouse Button상태확인 (0) | 2019.08.12 |
Windows API (0) | 2019.08.12 |