欢迎来到天天文库
浏览记录
ID:6662279
大小:431.66 KB
页数:24页
时间:2018-01-21
《指针式时钟课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、指针式时钟课程设计报告课程名称:设计题目:专业班级:姓名:学号:时间:指导教师:23目录1、基本功能描述………………………………………………………………………22、设计思路…………………………………………………………………………32.1.程序流程图…………………………………………………………………32.2.流程图相应说明……………………………………………………………43、软件设计…………………………………………………………………………63.1.设计步骤……………………………………………………………………63.
2、2.界面设计……………………………………………………………………103.3.关键功能的实现……………………………………………………………113.3.1模拟时钟的显示………………………………………………………113.3.2加载位图作为时钟背景………………………………………………133.3.3启动时钟………………………………………………………………143.3.4设置时间………………………………………………………………153.3.5暂停与开始……………………………………………………………153.3.6整点报时………
3、………………………………………………………163.3.7秒表计时………………………………………………………………173.3.8页面刷新及防抖动……………………………………………………19234、课程设计问题总结………………………………………………………………205、结论与心得………………………………………………………………………216、参考文献…………………………………………………………………………237、附录………………………………………………………………‥……………237.1.调试报告…………………………
4、…………………………………………237.2.测试结果……………………………………………………‥……………251、基本功能描述本课程设计的指针式时钟程序是基于MFC的windows应用程序设计,程序运行成功后,单文档界面会出现指针式时钟,数字式时钟和秒表计时器。指针式时钟圆表盘圆周上有分布均匀的12个大刻度,每个大刻度分别对应一个小时。每两个大刻度之间还有4个小刻度,刻度显示清晰,并且3、6、9、12刻度点还采用“Broadway”数字字体显示。时针,分针和秒针由粗细及长度各不相同的黑色绘成,其中时针采用镂空结
5、构,秒针呈黑色细线状,尾部有实心圆点连接使得更容易观测。时钟界面为圆形,钟的内框为黑色,外框为宽度更粗的枚红色,并且钟面中心背景设计有一张图片,如此的结构设计使得本时钟更有特色。指针式的时钟表盘右面则是一个以数字式显示时间的数字钟,数字时钟表盘为矩形,字体亦采用深枚红色,其日期显示的格式是xxxx年xx月xx日,时间显示格式是xx:xx:xx,小时为24进制,分钟和秒是60进制。页面的菜单栏中设有时钟控制的栏目,用来对所显示的时间进行设置。用户可直接点击菜单栏中时钟控制的下拉列表的选项,或者直接按对应的快捷键
6、。时钟整体外观简单时尚,使用方便快捷。页面的菜单栏设有时钟控制,可以对所显示的时间进行设置,用户可直接点击菜单栏中时钟控制的下拉列表的选项,或者直接使用快捷键。本模拟时钟可实现如下功能:(1)指针式的时钟和数字式的时钟显示的时间同步,且与计算机的系统时间一致,能显示的具体内容是年、月、日、时、分、秒。若想获得系统准确时间只需单击启动时钟。23(2)用户可自定义时间,单击设置时间后,在弹出的对话框中填入符合要求的日期时间,点击确定,两时钟自动跳到所设置的时间。(3)用户可点击菜单栏中的时钟控制中的暂停,开始选项
7、即可实现随时暂停,开始时钟。(4)本时钟可实现整点报时,每整点时会有铃声播放出来并弹出消息框显示提示整点。(5)鼠标左键单击秒表计时器的启动按钮,可开始秒表计时,点击停止,即停止计时。2、设计思路2.1程序流程图调用MoveTo()、LineTo()绘出指针调用GetCurrentTime()获取当前系统时间调用GetFont()创建数字钟字体调用SetTimer()设置时间间隔调用TextOut()输出数字时间程序开始初始化全局变量theApp()调用OnCreate()对时间进行初始化调用GetClien
8、tRect()获取客户区定义画笔CPen()和画刷CBrush()调用Ellipse()绘制指针时钟钟面及绘制数字时钟对话框23调用OnTimer()处理时间消息,OnDraw()刷新窗口显示调用SetLocalTime()时间显示?NYY设置时间?Y暂停?是否启动秒表?NN调用KillTime()Y调用OnLButtonDown()N退出?Y程序结束232.2流程图相应说明(1)程序运行开始定义全
此文档下载收益归作者所有