- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC图形与文本实验
实验二 图形与文本
实验目的和要求
1、了解CDC类的使用
2、掌握常用绘图函数的使用
3、学会设置字体
4、掌握画笔和画刷的使用
5、了解不同文本输出函数的用法
实验内容
1、编写程序Sy2_1,在客户区显示一行文本,要求文本颜色为红色、背景为黄色。
如下图所示:
代码如下
void CSy2_1View::OnDraw(CDC* pDC)
{
CSy2_1Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
pDC-SetTextColor(RGB(255,0,0));
pDC-SetBkColor(RGB(255,255,0));
pDC-TextOut(20,30,红色字体,黄色背景!);
}
编写一个应用程序Sy2_2,在客户区使用不同的画笔和画刷绘制点、折线、曲线、圆角矩形、弧、扇形和多边形等几何图形。
如图
代码如下:
void CSy2_2View::OnDraw(CDC* pDC)
{
CSy2_2Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
CPen *penOld,penNew;
CBrush *brushOld,brushNew;
penNew.CreatePen(PS_SOLID,5,RGB(255,0,0));
pDC-SelectObject(penNew);
pDC-SetPixel(CPoint(100,100),RGB(255,0,0));
pDC-MoveTo(150,70);
pDC-LineTo(300,100);
pDC-LineTo(400,240);
pDC-LineTo(200,270);
pDC-MoveTo(500,100);
pDC-Arc(20,200,200,300,200,250,20,200);
pDC-RoundRect(450,100,600,200,30,30);
pDC-Arc(100,300,300,500,300,400,200,300);
pDC-MoveTo(300,400);
pDC-LineTo(200,400);
pDC-MoveTo(200,300);
pDC-LineTo(200,400);
POINT pt[6]={{400,300},{500,300},{550,385},{500,460},{400,460},{350,385},};
pDC-Polygon(pt,6);
}
编写Sy2_3,利用函数CreateFontIndirect()创建黑色字体,字体高度为30像素,宽度为25像素,并利用函数DrawText()在客户区以该字体输出文本“VC++”。
如图
代码如下:
void CSy2_3View::OnDraw(CDC* pDC)
{
CSy2_3Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
CRect rect;
rect.SetRect(CPoint(50,60),CPoint(300,200));
CFont*OldFont,NewFont;
LOGFONT MyFont={
30,25,0,0,0,0,0,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH,
黑体
};
NewFont.CreateFontIndirect(MyFont);
OldFont=pDC-SelectObject(NewFont);
pDC-DrawText(VC++,rect,DT_WORDBREAK|DT_CENTER);
NewFont.DeleteObject();
}
编写单文档应用程序Sy2_4,在视图中显示三个圆,通过使用不同颜色的画笔及画刷来模拟交通红绿灯。
如图:
代码如下:
void CSy2_4View::OnDraw(CDC* pDC)
{
CSy2_4Doc* pDoc = GetDocument();
ASSERT_VALID(pDo
您可能关注的文档
- 4现代教育技术设备及软件配备标准.doc
- 53功能高分子材料课下30分钟演练(人教选修5).doc
- 5烃性质比较.doc
- 63届高一期末考试模拟试题8(必修二).doc
- 741无向图的连通分量和生成树.doc
- 51单片机电子时钟课程设计报告.doc
- 8-A10S-95【中国五环化学工程公司】尿素厂耐腐蚀不锈钢的休氏试验和金相检验.doc
- 8位数码管显示电子时钟c51单片机程序.doc
- 7号信令与交换机对接调试说明.doc
- 9E燃气轮机联合循环问题总结.doc
- 分析let s单元56ago2卷纸zheng unit56.pdf
- 塑胶材料其它分类原料pa9t 12.pdf
- md16x16数字媒体切换器设备.pdf
- 者参考项目发起人学科类型单位序列承包商修订页代码顺序典型.pdf
- 届世界天然气大会阿姆斯特丹2006add10288.pdf
- 期测试记录表每周weekly g1g6 journeys tests level 6 lesson26.pdf
- modernize-whitepaper现代化您应用程序白皮书.pdf
- anybackup产品典型案例分析.pdf
- 约克金融工程课程tfeslide32.pdf
- 广州市妇女儿童医疗中心历份教学药历01tjy.pdf
文档评论(0)