2010-08-03 5 views
0

다음 개체 인 계층 구조를 통합하는 SDI 응용 프로그램을 만듭니다. CVeiw < - (CWnd에서 파생 된 클래스)하위 캔버스에 그려야합니다.

? CWnd 클래스는 모든 크기 알림에 응답하고 그에 따라 의 크기를 조정해야합니다. 전체 클라이언트 영역을 활용하려면 자체를 최대화해야합니다. • 클래스는 다음 인터페이스를 지원할 수 있어야합니다. • ShowRectangle() - 클라이언트 영역 인 내의 모든 위치에 사각형을 그려야합니다. • ShowCircle() - 첫 번째 매개 변수는 이 원의 치수와 색을 정의하는 구조입니다. • 모두 지우기 - 캔버스를 지 웁니다. 사용자 그리기 선택할 때 클래스 내에서 위의 방법 • 가 호출되어야한다 -> 원형, 그리기 -> 사각형 그리기 ->는 메뉴에서 삭제 (메뉴가 동적으로 생성한다)

난을 구현했습니다. class CWnd에서 파생 된 창과 CVeiw의 하위 창으로 Mainfrm.cpp 파일 내에서 동적 메뉴와 hanlers를 추가했습니다.

이제 내 문제는 어떻게 이벤트가 Mainfrm.cpp 내부에서 처리 될 때 자식 창의 캔버스에서 그리는 것입니까 ??

답변

0

뷰 클래스를 메뉴 이벤트의 대상으로 사용할 수도 있습니다. 핸들러를 응용 프로그램 클래스에서 뷰로 이동하십시오.

+0

내 소스 코드를 확인 할 수 있습니다 http://hotfile.com/dl/59489401/c9b5da6/SDIApplication.zip.html – jagad89

+0

프로젝트를 보관하는 경우, 당신은 당신이 파일이 있습니다, 디버그를 삭제하고 폴더를 해제 할 수 있습니다 훨씬 작아! – dwo

+0

CChild 클래스 - 무언가를 그리기 위해 창을 만들 필요가없는 이유는 이미 뷰 클래스를 가져 오는 것입니다. – dwo

관련 문제