1.5 특정 키 입력상태를 감지
CheckHitKey 함수 레퍼런스 (주 : 일본어)
선언 |
int CheckHitKey( int KeyCode ); |
기능 |
특정 키 입력을 받는다. |
인수 |
KeyCode : 입력상태를 확인할 키의 키코드 |
반환값 |
1 - 입력됐다. 0 - 입력 안됐다. |
사용 예)
while( 1 ){ if( CheckHitKey( KEY_INPUT_ESCAPE ) == 1 ){ break; } } |
*ESC의 키코드 : KEY_INPUT_ESCAPE
*ESC를 입력하였을 때 while 반복분을 중단
=-=-=-
예제)
#include <DxLib.h> int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){ ChangeWindowMode( TRUE ); // 윈도우모드 DxLib_Init(); // DX라이브러리 초기화 int Handle; Handle = LoadGraph( "image/character_00.png" ); DrawGraph( 50, 100, Handle, TRUE ); while( 1 ){ if( CheckHitKey(KEY_INPUT_ESCAPE) == 1 ){ break; } }
DxLib_End() ; // DX라이브러리 종료 return 0 ; } |
제대로 동작하는 경우도 있지만 대부분은 화면이 멈추거나 응답없음오류가 발생할 것이다.
이때에는 ProcessMessage 함수를 추가해준다.
이 함수는 특히 특정 부분을 루푸하는 문장에 사용하게 될 것이다.
수정 예)
#include <DxLib.h> int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){ ChangeWindowMode( TRUE ); // 윈도우모드 DxLib_Init(); // DX라이브러리 초기화 int Handle; Handle = LoadGraph( "image/character_00.png" ); DrawGraph( 50, 100, Handle, TRUE ); while( 1 ){ ProcessMessage(); //추가된 함수 if( CheckHitKey(KEY_INPUT_ESCAPE) == 1 ){ break; } }
DxLib_End() ; // DX라이브러리 종료 return 0 ; } |
실행결과
ESC키를 통해 프로그램의 종료가 가능하다.
이 외에 윈도우의 x버튼을 클릭했을 때 프로그램을 종료시키는 예제는 다음과 같다.
#include <DxLib.h> int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){ ChangeWindowMode( TRUE ); // 윈도우모드 DxLib_Init(); // DX라이브러리 초기화 int Handle; Handle = LoadGraph( "image/character_00.png" ); DrawGraph( 50, 100, Handle, TRUE ); while( 1 ){ if( ProcessMessage() != 0 ){ break; } }
DxLib_End() ; // DX라이브러리 종료 return 0 ; } |
'DX라이브러리' 카테고리의 다른 글
1.7 백그라운드처리를 통한 이미지 움직이기 (0) | 2014.12.22 |
---|---|
1.6 백그라운드 처리 없이 이미지 움직이기 (0) | 2014.12.22 |
1.4 이미지를 메모리로 호출하여 표시 (0) | 2014.12.19 |
1.3 이미지 표시 (0) | 2014.12.19 |
1.2 윈도우 표시 (0) | 2014.12.19 |