GetKeyboardState

GetKeyboardState 함수는 지정된 된 버퍼를 256 가상 키의 상태를 복사.

(BOOL GetKeyboardState PBYTE  lpKeyState / / 상태 데이터를 수신 하는 배열에 대 한 포인터);
 

매개 변수

lpKeyState
각 가상 키에 대 한 상태 데이터를 받게 됩니다 256 바이트 배열에 대 한 포인터.

반환 값

함수가 성공 하면 반환 값은 0이 아닌.

함수가 실패 하면 반환 값은 0입니다. 확장 된 오류 정보를 얻을 하려면 GetLastError.

주의

응용 프로그램은 모든 가상 키의 현재 상태를 검색 하려면이 함수를 호출할 수 있습니다. 실로 서 상태 변경 메시지 큐에서 키보드 메시지를 제거 합니다. 마찬가지로 키보드 메시지는 스레드의 메시지 큐에 게시 됩니다 없으며 키보드 메시지를 게시 하거나 다른 스레드의 메시지 큐에서 검색 된 변경지 않습니다 상태는 변경 되지 않습니다. (예외: 스레드를 통해 연결 되는 AttachThreadInput 같은 키보드 상태를 공유 합니다.)

함수가 반환 될 때 lpKeyState 매개 변수에서 가리키는 배열의 각 멤버는 가상 키에 대 한 상태 데이터를 포함 합니다. 키는 아래로; 상위 비트가 1 인 경우 그렇지 않으면, 그것 은입니다. 낮은 비트가 1 이면 키 전환 됩니다. 키를 같은 모자 잠금 키를 설정 하는 경우 전환 됩니다. 키 꺼져 있으며 낮은 비트가 0 인 경우 untoggled 합니다. 키를 전환할 때 및 때 키가 전환 된 해제 토글 키 표시등 (있는 경우) 키보드에 있을 것입니다.

GetKeyState 함수를 사용 하 여 개인 키에 대 한 상태 정보를 검색 합니다. 메시지 큐에서 해당 키보드 메시지가 검색 되었습니다 여부에 관계 없이 개별 키에 대 한 현재 상태를 검색 하려면 GetAsyncKeyState 함수 사용

응용 프로그램 lpKeyState가 가리키는 배열에 인덱스 가상 키 코드 상수 VK_SHIFT, VK_CONTROL 및 VK_MENU 사용할 수 있습니다. 이 왼쪽 및 오른쪽 사이의 구별 없이 shift, ctrl 또는 alt 키의 상태를 제공 합니다. 응용 프로그램으로 사용할 수도 다음 가상 키 코드 상수 인덱스 키의 왼쪽 및 오른쪽 인스턴스 사이 구별 하.

VK_LSHIFT VK_RSHIFT
VK_LCONTROL VK_RCONTROL
VK_LMENU VK_RMENU

이러한 왼쪽 및 오른쪽 구별 상수 GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyStateMapVirtualKey 기능을 통해 응용 프로그램을 사용할 수 있습니다.

QuickInfo

nbsp;?Windows &NT: 버전 3.1 이상이 필요 합니다.
Windows:Windows 95 이상이 필요합니다.
Windows CE:지원 되지 않습니다.
헤더:Winuser.h에서 선언합니다.
가져오기 라이브러리:User32.lib를 사용 하 여.

참고 항목

키보드 입력 개요, 키보드 입력 기능, GetKeyState, GetAsyncKeyState, MapVirtualKey, SetKeyboardState

 

Index