2009. 8. 27. 15:40 Programming/MFC

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;
}

posted by 부풍