Notice
Recent Posts
Recent Comments
삽이 부서질 때까지 삽질
[MFC] 두 개의 도큐먼트 타입 지원하는 MDI 만들기 본문
전 글에서 언급했던 두 개의 도큐먼트 타입을 지원하는걸 만들어볼게요.
맛보기 1 글에서 사용했던 프로젝트를 사용하니 없으시면 그 글을 보시고 만드시면 되겠습니다.
먼저 글자 이외에 클릭하면 원을 찍는 새로운 도큐먼트를 만들어볼게요.
MFC 클래스를 추가해주세요. 새로운 도큐먼트니 CDocument와 View가 필요하겠죠.
원을 저장하는 CircleDoc.h에서 CArray 를 만들어주고 CircleDoc.cpp 에서 초기화를 해줍니다.
CircleView.cpp 에 왼쪽 클릭하면 발생하는 메세지 핸들러를 추가하고 좌표를 저장하는 코드를 작성합니다.
그리고 OnDraw에 원을 출력하는 코드를 작성합니다.
리소스 뷰 전환 후 String에 IDR_Circle_Type 를 추가합니다. 그리고 캡션에는 아래와 같이 줍니다.
이때 IDR_MDITestTYPE 캡션을 복사해서 형태에 맞게 변환해주시면 편합니다.
\nMDITest\nMDITest\nMDITest Files (*.mdi)\n.mdi\nMDITest.Document\nMDITest.Document
\nCircle\nCircle\nCricle Files (*.cir)\n.cir\nCircle.Document\nCircle.Document
마지막으로 도큐먼트 템플릿을 생성하고 등록하는 코드를 MDITest.cpp의 BOOL CMDITestApp::InitInstance() 에 추가해줍니다. 이렇게 되면 도큐먼트에 따라 나오는 메뉴가 달라진다.
완성하면 아래처럼 됩니다.
'MFC' 카테고리의 다른 글
[MFC] MDI 맛보기 2 (0) | 2016.12.11 |
---|---|
[MFC] MDI 맛보기 1 (0) | 2016.12.11 |
[MFC] 정적 분할 윈도우 (0) | 2016.12.07 |
[MFC] 동적 분할 윈도우 (0) | 2016.12.06 |
[MFC] SDI 간단 분석 (0) | 2016.12.06 |
Comments