- 81
- 0
- 约2.12万字
- 约 36页
- 2017-10-06 发布于重庆
- 举报
通用对话框和自定义对话框的使用及图形绘制函数的使用和定时器的设置
面向对象编程技术
实验四实验报告
班 级:
学 号:
姓 名:***
版本号: 1
时 间:2009-11-07
目录
1 实验要求 ………..3
2 实验过程及结果 ..3
A对话框部分 3
基本要求部分 3-5
刷新窗口显示 5-13
B图形绘制部分 13
基本要求部分 13
刷新窗口显示 13-20
C定时器部分 20-21
D问题及解决方案 21
3 实验总结 21-22
附录 关键代码 22
1.对话框,时钟程序代码: 22-29
2.图形绘制函数代码: 29-36
实验要求
掌握通用对话框和自定义对话框的使用;掌握图形绘制函数的使用;掌握定时器的设置和定时消息响应
实验过程及结果
对话框部分:
研究第五章示例程序,理解通用对话框、自定义对话框的使用方式。
在自己的工作目录中建立新工程,工程名称DuiHuaKuang,文件名称DuiHuaKuang.cpp。从已有的示例程序中选取适当的代码,修改形成自己的框架。
增加对WM_PAINT消息的处理,在窗口客户区输出文本。显示如下图:
增加菜单资源,要求至少包含“更改文本颜色”和“更改背景颜色”两个命令。截图如下所示:
自定义一个简单的对话框,该对话框内至少有一个“选择背景色”按钮和一个静态文本框(或Edit框)以及确定、取消两个按钮。截图如下所示:
编写上述自定义对话框的处理函数:BOOL CALLBACK ColorDlgProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
增加响应菜单命令的代码
在“更改文本颜色”命令的响应中调用通用颜色对话框选择新的颜色。新选定的文本颜色用全局变量或静态变量保存,在主窗口刷新消息(WM_PAINT)处理中用该颜色显示原来输出的文本。
更改背景颜色命令响应中激活自定义对话框,对话框结束后,根据选择的颜色,结合SetClassLong和CreateSolidBrush函数,创建新的画刷,并替换原来主窗口类使用的画刷。( HBRUSH hbrBack = CreateSolidBrush(dwColor); SetClassLong(hWnd, GCL_HBRBACKGROUND, (LONG) hbrBack); )
刷新窗口看显示结果是否符合要求。运行结果显示如下图:
单击鼠标左键,弹出自定义对话框,点击“请选择文字颜色”按钮,弹出通用对话框。
选择好文字颜色,点击“确定”按钮,文字颜色值显示在静态文本框中如下图所示:
点击确定后,文字颜色修改成功:
选择菜单中编辑下的”更改文字颜色”选项,弹出通用对话框:
选择好颜色后,选“确定”则文字颜色改变:
选择菜单中编辑下“更改背景颜色”选项,弹出自定义对话框:
输入颜色值:
按“确定”按钮后:
图形绘制函数的使用
研习EASYGDI示例程序。查看各个GDI绘制函数的使用方法。
在自己的工作目录中建立新工程。要求同2
增加对WM_PAINT消息的处理,在其中使用
Polyline
PolyPolyline
Polygon
PolyPolygon
等函数,注意在WM_PAINT消息中对HDC的获取和释放使用的函数是BeginPaint和EndPaint函数。
按与Polyline相同的函数格式编写自定义的折线绘制函数,新函数命名为MyPolyline(用MoveToEx和LineTo实现),用该函数替换上一步代码(11)中的Polyline,应该获得同样的运行结果。
编写MyPolyPolyline和MyPolyPolygon,替换11中的库函数,获得同样的运行结果,以此加深对函数编写、指针方式参数传递的理解。
刷新窗口看显示结果是否符合要求。运行结果显示如下图:
在菜单下选择“编辑”下的Paint_polyline 选项,则图形如下所示:
在菜单下选择“编辑”下的Paint_polygon 选项,则图形如下所示
:
在菜单下选择“编辑”下的Paint_polypolygon 选项,则图形如下所示:
在菜单“更改”中选择MyPolyline,调用自定义Polyline函数显示如下图所示:
在菜单“更改”中选择MyPolypolyline,调用自定义Polypolyline函数显示如下图所示:
在菜单“更改”中选择MyPolypolygon,调用自定义Polypolygon函数显示如下图所示:
该函数没有调用成功.
定时器使用
在WM_CREATE消息中增加设置定时器的代码(用SetTimer函数):
time
您可能关注的文档
- 贵州省2014届高三地理复习测试卷15-3 资源的跨区域调配以我国西气东输为例 Word版含解析.doc
- 贵州某商城空调通风施工方案.doc
- 贵州省建筑工程计价定额2004修订完美版.doc
- 贯通安全技术措施(炮掘).doc
- 费马定理的全解析.doc
- 资产定价模型缺陷综述.doc
- 贵州神秘的棺材洞.doc
- 资产阶级的法律文献.doc
- 资料 复合调味料.doc
- 资料-常用电子元件.doc
- Swoole实战:构建HTTP Server框架与秒杀系统技术训练.pdf
- 人教统编版语文七年级初一下册 23 太空一日 名师教学PPT课件.ppt
- 人教版四年级数学下册 认识三角形 名师教学PPT课件.ppt
- 人教版部编版小学语文二年级下册 蜘蛛开店(1)(1) 名师教学课件PPT(1).ppt
- 人教版物理八年级上册 长度和时间的测量_课件 名师教学PPT课件.ppt
- 人教版部编版小学语文一年级下册 棉花姑娘 名师教学课件PPT(4).ppt
- 人教版部编版小学语文二年级下册 彩色的梦(第一课时 ) 名师教学课件PPT.ppt
- 汽车燃油加速净化剂.ppt
- XX小学党支部书记2025年度组织生活会个人对照检查材料(精品).docx
- 在某中学青年业余党校的党课讲稿:深悟思想伟力 勇担青春使命.docx
原创力文档

文档评论(0)