키 눌음 처리 이벤트로 하는 방법과 kbhit() 함수를 사용하는 방법. GetAsyncKeyState()을 이용하는 방법이 있다.
이벤트는 앞써 설명한 방법으로 WM_KEYDOWN과 WM_KEYUP등을 이용한 방법이다.
kbhit()은 키보드에 입력을 받았는지 확인하는 방식으로 다음과 같이 사용이 가능하다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | #include <stdio.h> #include <conio.h> int main() { int key; if(kbhit() != 0) { key = getch(); } return 0; } | cs |
GetAsyncKeyState()는 윈도우스에서 키가 눌러졌는지 확인 하는 것으로, 위에 설명한 방식은 다중 키 입력을 받을 수 없다. 하지만, 이 함수를 사용한다면, 다중으로 다운을 받을 수 있게 된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | #include <stdio.h> #include <stdlib.h> #include <windows.h> int main(int argc, char** argv) { while(1) { if(GetAsyncKeyState(VK_UP)!=0) { printf("Key Down : UP\n"); } if(GetAsyncKeyState(0x41)!=0) { printf("Key Down : A\n"); } if(GetAsyncKeyState(0x1B)!=0) { break; } } return 0; } | cs |
'연습' 카테고리의 다른 글
ffmpeg 사용하기 -파일 병합처리- (0) | 2016.07.13 |
---|---|
콘솔 위치 옮기기. (0) | 2016.07.12 |
Windows API 프로그래밍 -18. 키보드 입력. - (0) | 2016.07.10 |
와콤 스타일러스 펜(FindLine) 구매기. (0) | 2016.07.09 |
Large Text Compression 최근 근황 (0) | 2016.07.08 |