- 1、本文档共92页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
《面向对象程序设计》实验报告
题目面向程序设计
学生姓名吴沭成
学号1302130218
专业班级信科2班
指导老师朱世华
面向对象实验一、cview类中cdc的使用
1.实验目的
熟悉VS++2010的开发平台,掌握CDC类的使用:文本的输出,数字的显示输出,点线图的绘制,位图的显示输出。
2.实验内容
(1)显示一首诗.
〔2〕画一个坐标系,画函数的图像.
〔3〕显示资源中的一幅位图.
(4)GDI绘图之鼠标绘图.
3.实验步骤:
实验内容一:显示一首诗
创立一个名为Ex1的单文档MFC应用程序;
在视图类的源文件中编辑ondraw()函数,添加如下代码:
voidCEx1_1View::OnDraw(CDC*pDC)
{
CEx1_1Doc*pDoc=GetDocument();
ASSERT_VALID(pDoc);
if(!pDoc)
return;
//TODO:在此处为本机数据添加绘制代码
CClientDCdc(this);
TEXTMETRICtm;
dc.GetTextMetrics(tm);
intnLineHeight=tm.tmHeight+tm.tmExternalLeading;
dc.TextOut(10,1*nLineHeight,CString(春晓));
dc.TextOut(10,2*nLineHeight,CString(春眠不觉晓,));
dc.TextOut(10,3*nLineHeight,CString(处处闻啼鸟。));
dc.TextOut(10,4*nLineHeight,CString(夜来风雨声,));
dc.TextOut(10,5*nLineHeight,CString(花落知多少。));
}
运行程序得到如下结果:
实验内容二:画一个坐标系,画函数的图像
创立一个名为Ex1_2的单文档MFC运用程序;
在视图类的源文件中编辑ondraw()函数,添加如下代码:
voidCEx1_2View::OnDraw(CDC*pDC)
{
CEx1_2Doc*pDoc=GetDocument();
ASSERT_VALID(pDoc);
if(!pDoc)
return;
//TODO:在此处为本机数据添加绘制代码
CRectrectClient;
this-GetClientRect(rectClient);
pDC-SetMapMode(MM_ANISOTROPIC);//设置映射模式
pDC-SetWindowExt(1000,1000);//设置窗口宽度
pDC-SetViewportExt(rectClient.right,-rectClient.bottom);//设置视口宽度
pDC-SetViewportOrg(rectClient.right/2,rectClient.bottom/2);//设置视口原-点
//pDC-Ellipse(-500,500,500,-500);
//开始画-坐标轴
pDC-MoveTo(-500,0);
pDC-LineTo(500,0);
pDC-MoveTo(500,0);
pDC-LineTo(490,10);
pDC-MoveTo(500,0);
pDC-LineTo(490,-10);
pDC-MoveTo(0,-500);
pDC-LineTo(0,500);
pDC-MoveTo(0,500);
pDC-LineTo(-10,490);
pDC-MoveTo(0,500);
pDC-LineTo(10,490);//结束画坐标轴
for(inti=-4;i=4;i++)
{
CStringstr;
str.Format(_T(%d),i);
pDC-MoveTo(i*100,-5);
pDC-LineTo(i*100,+5);
pDC-TextOutW(i*100,-5,str);
}
for(inti=-1;i=1;i++)
{
if(i==0)
continue;
CStringstr;
str.Format(_T(%d),i);
pDC-MoveTo(-5,i*100);
pDC-LineTo(+5,i*100);
pDC-TextOutW(+5,i*100,str);
}
CPenmypen;
COLORREFclr=RGB(255,
文档评论(0)