通用对话框和自定义对话框的使用与图形绘制函数的使用和定时器的设置.docVIP

通用对话框和自定义对话框的使用与图形绘制函数的使用和定时器的设置.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
山东大学威海分校电子系 2007级 面向对象编程技术 实验四实验报告 班 级: 学 号: 姓 名:*** 版本号: 1 时 间:2009-11-07 目录 TOC \o 1-3 \h \z \u 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,调用自定义Polypolyli

文档评论(0)

bcll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档