2016-06-15 8 views
-2

WINAPI를 사용하여 C++에서 어떤 키가 키보드에서 눌러 졌는지 어떻게 알 수 있습니까?키보드에서 어떤 키를 누르는 지 어떻게 알 수 있습니까? C++

GetAsyncKeyState을 사용하려고하지만 정확하게 하나의 키만 작동하며 어느 것을 선택해야합니까?하지만 키 코드를 가져 와서 TCP를 보내야합니다.

+1

'GetAsyncKeyState'에 대한 맨 페이지를 읽으면 GetKeyboardState에 링크되어 있습니다 (https://msdn.microsoft.com/en-us/library/windows/desktop/ms646299 (v = vs. 85) .aspx) –

+0

콘솔 응용 프로그램인지 GUI 응용 프로그램인지에 따라 다릅니다 –

답변

1

루프 하나 각각의 모든 문자를 통해 시도 : '에서'단지 '에서 예를 들어 I 루프에서

for (char i = 32; i < 127; i++) 
    if (GetAsyncKeyState (i)) 
     /* Do whatever you want with that character */; 

당신이 원하는대로 ~'를 수정합니다.

+1

대문자 'G'인'GetAsyncKeyState'입니다. 하지만 키 상태를 반환하는 [GetKeyboardState] (https://msdn.microsoft.com/en-us/library/windows/desktop/ms646299.aspx)가 있기 때문에 루프에서 호출 할 필요가 없습니다. 전체 키보드의 경우. – IInspectable

+0

@IInspectable 예,하지만'GetKeyboardState'는'GetAsStatus'와는 다른 의미를 갖는'GetKeyState'와 일치합니다. 묻는 사람이 필요로하는 의미에 관해서는, 나는 우리가 확신 할 수 있다고 생각하지 않는다. –