好文档 - 专业文书写作范文服务资料分享网站

MFC课程设计实验报告

天下 分享 时间: 加入收藏 我要投稿 点赞

MFC—课程设计

/////////////////////////////////////////////////////////////////////////////

// CLwhView construction/destruction

CLwhView::CLwhView() { }

CLwhView::~CLwhView() { }

BOOL CLwhView::PreCreateWindow(CREATESTRUCT& cs) { }

/////////////////////////////////////////////////////////////////////////////

// CLwhView drawing

void CLwhView::OnDraw(CDC* pDC) {

CLwhDoc* pDoc = GetDocument(); return CView::PreCreateWindow(cs);

// TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs

// TODO: add construction code here

46

MFC—课程设计

}

ASSERT_VALID(pDoc); CShape* p;

if (pDoc->m_Elements.GetSize() > 0) {

for (int i=0; i < pDoc->m_Elements.GetSize(); i++) {

p = (CShape*)pDoc->m_Elements[i]; p->Draw(pDC);

}

}

// TODO: add draw code for native data here

/////////////////////////////////////////////////////////////////////////////

// CLwhView printing

BOOL CLwhView::OnPreparePrinting(CPrintInfo* pInfo) { }

void CLwhView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { }

// TODO: add extra initialization before printing // default preparation

return DoPreparePrinting(pInfo);

47

MFC—课程设计

void CLwhView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { }

/////////////////////////////////////////////////////////////////////////////

// CLwhView diagnostics

#ifdef _DEBUG

void CLwhView::AssertValid() const { }

void CLwhView::Dump(CDumpContext& dc) const { }

CLwhDoc* CLwhView::GetDocument() // non-debug version is inline { }

#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////

ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CLwhDoc))); return (CLwhDoc*)m_pDocument; CView::Dump(dc); CView::AssertValid();

// TODO: add cleanup after printing

48

MFC—课程设计

// CLwhView message handlers

void CLwhView::OnLButtonDown(UINT nFlags, CPoint point) {

// TODO: Add your message handler code here and/or call default

CLwhDoc* pDoc = GetDocument();

CClientDC dc(this); CPoint pntLogical = point; OnPrepareDC(&dc);

dc.DPtoLP(&pntLogical);//DP->LP进行转换 CType dlg; CShape* p=NULL;

if ((nFlags&MK_CONTROL) == MK_CONTROL)//Ctrl键按下 {

if (dlg.DoModal() == IDOK)

{

switch(dlg.m_TuYuanTyp) {

case EnumTuYuanTyp_Square:

{ }

p = new CSquare(dlg.X,dlg.Y,dlg.Width,dlg.LineWidth,

dlg.LineColorR,dlg.LineColorG,dlg.LineColorB, dlg.FillColorR,dlg.FillColorG,dlg.FillColorB);

break;

case EnumTuYuanTyp_Rectangle:

{

p

=

new

CRectangle(dlg.X,dlg.Y,dlg.Width,dlg.High,dlg.LineWidth,

49

MFC—课程设计

}

dlg.LineColorR,dlg.LineColorG,dlg.LineColorB, dlg.FillColorR,dlg.FillColorG,dlg.FillColorB);

break;

case EnumTuYuanTyp_Triangle:

{

p

=

new

CTriangle(dlg.X,dlg.Y,dlg.Width,dlg.High,dlg.LineWidth,

}

dlg.LineColorR,dlg.LineColorG,dlg.LineColorB, dlg.FillColorR,dlg.FillColorG,dlg.FillColorB);

break;

case EnumTuYuanTyp_Circle:

{

p

=

new

CCircle(dlg.X,dlg.Y,dlg.Width,dlg.LineWidth,

}

dlg.LineColorR,dlg.LineColorG,dlg.LineColorB, dlg.FillColorR,dlg.FillColorG,dlg.FillColorB);

break;

case EnumTuYuanTyp_Ellipse:

{

p

=

new

CEllipse(dlg.X,dlg.Y,dlg.Width,dlg.High,dlg.LineWidth,

}

dlg.LineColorR,dlg.LineColorG,dlg.LineColorB, dlg.FillColorR,dlg.FillColorG,dlg.FillColorB);

break;

case EnumTuYuanTyp_Text:

50

MFC课程设计实验报告

MFC—课程设计///////////////////////////////////////////////////////////////////////////////CLwhViewconstruction/destructionCLwhView::CLwhView(){}CLwhView::~CLwhV
推荐度:
点击下载文档文档为doc格式
6b3wk6z9qh3fre38hic91cf865brly010k3
领取福利

微信扫码领取福利

微信扫码分享