마우스 메시지 2

7. 첫 번째 실습 – 도형 이동 시키기 [Windows API]

안녕하세요. 언제나휴일입니다. 이번에는 현재까지 다룬 내용(윈도우 클래스 등록 및 개체 생성, 기본 그리기, 키보드 입력, 마우스 입력, 타이머 입력)을 정리하는 실습을 할게요. 실습할 시나리오는 다음과 같습니다. 주어진 공간 안에서 도형을 이동시키는 프로그램 방향 키를 누르면 도형의 방향이 바뀐다. space 키를 누르면 도형은 멈춘다. 현재 방향과 도형의 좌표(논리 좌표)를 출력하시오. 마우스 왼쪽 버튼을 클릭하면 도형이 바뀐다.(사각형->원->사각형->원…) 도형이 움직일 수 있는 공간을 표시하고 논리 좌표에 맞게 모눈을 그리시오. 도형은 움직일 수 있는 공간 경계 밖으로 이동할 수 없어요. 진입점에서는 윈도우 클래스 등록, 개체 생성, 메시지 루프를 작성합니다. #include #define MY..

4. 마우스 입력

윈도우즈 프로그램에서 사용하는 기본 입력 장치에는 마우스와 키보드가 있습니다. 그리고 시스템에서 제공하는 타이머도 자주 사용하는 입력 장치입니다. Windows API에서 제공하는 마우스 관련 메시지는 크게 세 종류로 구분할 수 있어요. 클라이언트 영역에서 마우스를 누르거나 뗐을 때 발생하는 메시지, NC(Noc Client, 비 클라이언트) 영역에서 마우스를 누르거나 뗐을 때 발생하는 메시지, 그 외의 메시지(마우스 위치를 조사하기 위한 메시지나 마우스 휠 등)가 있어요. 실제 프로그래밍에서 많이 처리하는 메시지는 클라이언트 영역에서 누르거나 뗐을 때 발생하는 메시지입니다. NC 영역에서 발생한 마우스 메시지는 DefWindowsProc에 의해 디폴트 처리를 하는 것이 대부분이겠죠. Client 영역 ..