Programming/MFC
Example : MDIEx(b)
부풍
2009. 8. 27. 15:40
CCircleDoc 클래스 생성
class CCircleDoc : public CDocument { public: CCircleDoc(void); virtual ~CCircleDoc(void); virtual BOOL OnNewDocument(); CRect m_Rect; };
CCircleDoc::CCircleDoc(void) { } CCircleDoc::~CCircleDoc(void) { } BOOL CCircleDoc::OnNewDocument() { // TODO: 여기에 특수화된 코드를 추가 및/또는 기본 클래스를 호출합니다. m_Rect = CRect(0, 0, 100, 100); return CDocument::OnNewDocument(); }
CCircleView 클래스 생성
CCircleView::CCircleView(void) { } CCircleView::~CCircleView(void) { } CCircleDoc* CCircleView::GetDocument(void) { return (CCircleDoc*)m_pDocument; } void CCircleView::OnDraw(CDC* pDC) { CCircleDoc *pDoc = GetDocument(); pDC->Ellipse(pDoc->m_Rect); }
===
BOOL CMDIExApp::InitInstance() { // ~~~~ CMultiDocTemplate* pDocTemplate; pDocTemplate = new CMultiDocTemplate(IDR_MDIExTYPE, RUNTIME_CLASS(CMDIExDoc), RUNTIME_CLASS(CChildFrame), // 사용자 지정 MDI 자식 프레임입니다. RUNTIME_CLASS(CMDIExView)); if (!pDocTemplate) return FALSE; AddDocTemplate(pDocTemplate); pDocTemplate = new CMultiDocTemplate(IDR_CIRCLETYPE, RUNTIME_CLASS(CCircleDoc), RUNTIME_CLASS(CChildFrame), RUNTIME_CLASS(CCircleView)); AddDocTemplate(pDocTemplate); // ~~~~ return TRUE; }