목록프로그래밍 기술/Windows API (8)
언제나 휴일
2.2 그리기 예이번에는 간단한 그리기 예제를 통해 Windows API를 이용하여 어떤 절차를 거치는지 살펴고기로 합시다. [그림 2] 그리기 작업 수행 흐름 앞에서 소개했듯이 Windows API의 그리기 기본 흐름은 [그림 2]와 같습니다. Windows API를 처음 학습할 때 새로운 형식 명과 긴 함수 이름과 생소한 흐름과 절차들 때문..
2.1 WM_PAINT 메시지윈도우에 다른 윈도우에 의해 가려졌다가 보여지거나 최소화 후에 최대화를 하는 등의 작업을 수행하면 다시 그려주어야 하는 영역이 생깁니다. 윈도우즈 운영체제에서는 다른 창에 의해 가려지는 영역을 클리핑 영역으로 기억해 두었다가 해당 영역이 다시 보여지면 그 부분을 포함하는 최소한의 사각 영역을 무효화 영역이 발생한 것으로 처리합니다. 이 때 발생하는 윈도우 메시지가 WM_PAINT입니다.그런데 윈도우즈 프로그램에서 무효화 ..
2. 기본 그리기Windows API에서 그리기는 DC(Device Context)를 이용합니다. DC란 출력에 필요한 여러 정보를 가지고 있는 구조체로 라인이나 경계를 그릴 때 사용하는 펜, 면을 채울 때 사용하는 브러쉬 등의 정보를 갖고 있습니다. DC를 사용하지 않고 그리기를 한다고 가정하면 선을 그리기 위해 두 점의 좌표 뿐만 아니라 선의 형태, 선의 두께, 선의 색상 정보들을 인자로 전달해야 합니다. 사각형을 그리기 위해..
1.4 윈도우 클래스 등록 및 윈도우 개체 생성이번에는 윈도우 클래스를 등록하여 윈도우 개체를 생성하는 형태의 윈도우즈 응용 프로그램을 만들어 보기로 합시다. 이번 프로그램을 통해 윈도우즈 프로그램의 기본적인 동작 흐름을 파악할 수 있습니다. 윈도우즈 프로그램에서 자신의 원하는 형태로 창을 만들기 위해서는 윈도우 클래스를 등록한 후에 등록한 윈도우 클래스 형태의 인스턴스를 생성하는 것이 필요합니다. 윈도우즈 API에서는 비슷한 동작을 하는 ..
1.3 첫 번째 윈도우즈 프로그램 만들기이제 첫 번째 윈도우즈 프로그램을 작성해 봅시다. 개발 도구에서 [Windows 응용 프로그램]을 선택하시고 마법사의 응용 프로그램 설정에서 빈 프로젝트를 체크하여 프로젝트를 생성하세요. 여기에서는 프로그램을 시작하면 메시지 창이 뜨고 확인을 누르면 메시지 창이 닫히면서 응용 프로그램이 끝나는 아주 작은 프로그램입니다. 이 프로그램을 통해 윈도우즈 프로그램의 진입점과 함수 호출 규약 및 포함해..