윈도우즈 API 정복 과제
-
P425 Adhere윈도우즈 API 정복 과제 2018. 2. 18. 17:02
메인 윈도우 하나와 툴 팔레트에 해당하는 팝업 윈도우 하나를 생성한다. 팝업 윈도우의 닫기 버튼은 쓸 수 없고 회색의 배경색을 주어 툴 팔레트처럼 보이도록 만들자. 크기 조정이 가능한 경계선을 가지지만 폭은 200픽셀로 고정되어 있어 크기 조정을 할 수 없고 높이만 조정할 수 있다. 높이는 부모의 높이를 초과하지 못하며, 최소 부모 높이의 1/4이상의 크기를 유지해야 한다. 팝업 윈도우가 부모의 좌우측벽에 30픽셀 미만으로 접근하면 부모의 벽에 밀착시켜 툴 팔레트를 부모와 쉽게 정렬할 수 있도록 한다. 포토샵같은 그래픽 편집 프로그램의 툴 팔레트에서 볼 수 있듯이 작고 배치하기 쉬운 팝업 윈도우를 만든다고 생각하면 된다.
-
P397 ParentCenter윈도우즈 API 정복 과제 2018. 2. 18. 17:01
대화상자의 속성 중에 화면상의 절대 위치를 지정하거나 화면의 중앙에 대화상자가 나타나도록 하는 속성이 있다.그러나 부모의 중앙에 나타나는 속성은 없으므로 함수를 직접 만들어 써야 한다.대화상자의 핸들을 주면 이 대화상자를 부모 윈도우의 중앙으로 이동시키는 다음 함수를 구현해보자. void MoveToParentCenter(HWND hWnd); 대화상자의 핸들 하나만을 인수로 취하며 크기는 그대로 유지한 채 부모 윈도우의 정중앙으로 이동시켜야 한다.보통 대화상자가 초기화되는 시점인 WM_INITDIALOG에서 이 함수를 호출할 것이다.만약 부모가 최소화되어 있다면 부모 윈도를 먼저 복구한 후에 화면 중앙으로 이동해야 한다.
-
P209 SimplePaint윈도우즈 API 정복 과제 2018. 1. 30. 22:29
4장의 Mouse 예제처럼 마우스로 자유 곡선을 그리되 선의 색상은 라디오 버튼으로 선택하고,굵기는 체크 박스로 선택하도록 하라. 다시 그리기 버튼을 제공하고 이 버튼을 누르면 화면을 모두 지우도록 한다. 아직 화면 복구는 하지 않아도 된다. 색상이 너무 많아 실습하기 번거롭다면 빨간색, 파란색, 노란색 정도의 색상만 사용해도 상관없다. 이 과제는 계속 확장될 예정이므로 소스는 4장의 예제에서 복사해 오더라도 프로젝트는 반드시 새로 만들고 소스를 깔끔하게 유지하는 것이 좋다.