키보드 입력을 처리하기
키보드로부터 입력이 발생했을 경우 해당 프로그램에 WM_CHAR 또는 WM_KEYDOWN 메세지를 보내준다. 프로그램은 이 메세지를 받아 키입력을 처리해야한다.
클래스 속성의 메세지 목록에서 WM_CHAR를 찾아 메세지 핸들러를 추가하면 OnChar함수가 추가된다.
다음과 같이 소스를 추가한다
void CCharExamView::OnChar(UNIT nChar, UNIT nRepCnt, UNIT nFlags) { //TODO: 여기에 메세지 처리기 코드를 추가... CClientDC dc(this); //DC를 얻어옴 static int x = 0; //함수 호출이 여러번 되어도 이전 값을 기억하기 위해 x += 8; //static으로 선언 CString str; str.Format(_T("%c"), nChar); //키보드에서 입력된 문자를 (string형으로 변환) if(nChar >= 'A' && nChaar <= 'Z' || nChar >= 'a' && nChar <= 'z' || nChar >= '0' && nChar <= '9') { dc.TextOut(x, 100, str, 1); //화면에 출력 } CView::OnChar(nChar, nRepCnt, nFlags); }
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
27 | MFC의 다각형 그리기 | pjk | 2014.05.24 | 15721 |
26 | 특정 파일이 있는지 확인하는 배치 스크립트 | 운영자 | 2019.04.06 | 10202 |
25 | 세 점을 지나는 원 (3 Point Circle) | pjk | 2014.06.05 | 10063 |
24 | SetPixel() 을 사용하여 원을 그리기... | pjk | 2014.06.05 | 9601 |
23 | Visual Studio MFC에서 디버깅용 콘솔 창 띄우기 | pjk | 2014.05.24 | 7921 |
22 | 두점을 지나고 반지름을 알고있을 때 원의 중심점을 찾기 | pjk | 2014.06.09 | 7772 |
21 | ini 파일 이용하기 | makersweb | 2015.07.01 | 7262 |
20 | 체크박스가 선택되어 있는지 확인하는 GetCheck() | pjk | 2014.05.24 | 7147 |
19 | 원의 중심과 반지름을 이용한 원 그리기 | pjk | 2014.05.30 | 6805 |
18 | 시리얼 통신 (COM Port open) | pjk | 2014.11.17 | 6081 |
17 | GetUserDefaultUILanguage()함수를 이용하여 언어ID를 얻기 | makersweb | 2015.05.29 | 5536 |
16 | FindFirstFile() | pjk | 2014.07.18 | 4907 |
» | 키보드 입력을 처리하기 | pjk | 2014.05.24 | 4826 |
14 | DC(Device Context) | pjk | 2014.05.24 | 4687 |
13 | WinCE 디버그메시지 사용법(DEBUGMSG, RETAILMSG, ERRORMSG, NKDbgPrintfW) | pjk | 2014.07.21 | 4685 |
12 | MFC 대화상자 종료 메시지 호출 순서 | pjk | 2014.06.19 | 4664 |
11 | CreateFile함수로 시리얼 포트 COM10 이상 열기 | pjk | 2014.11.17 | 4624 |
10 | 쓰레드 동기화 기법 | pjk | 2014.05.24 | 4580 |
9 | DLL의 진입점 함수 | pjk | 2015.01.14 | 4440 |
8 | 윈도우 프로그래밍에서의 데이터 형 | pjk | 2014.10.13 | 4394 |