武汉理工大学《专业课程设计 3》课程设计说明书 模拟时钟程序 1 基本功能描述 本次课程设计是基于面向对象的应用程序设计,主要运用 C++语言在 VC++开发环境下的 MFC 中编程实现
模拟时钟的基本功能是程序初始在屏幕上有一指针式时钟表盘,表盘为椭圆形,内部分布有 12 个刻度,表盘上有三个长度和颜色不同的时针分针和秒针,相互之间容易辨认,指针的运动通过数学推导之后以代码实现
表盘的下方是一个数字形式显示的数字钟,其显示时间的格式是时:分:秒,指针式时钟和数字式时钟显示的时间同步,且两个时钟所显示的时间与系统时间相致,页面的菜单项设有时间设置项,可以对所显示的时间进行调整,能进行调整的具体内容是年、月、日、时、分、秒
设计成功之后,此应用程序便可以起到时钟显示的作用
2 设计思路 2
1 程序流程图 武汉理工大学《专业课程设计3》课程设计说明书 图1 模拟时钟程序流程图 2
2 程序流程分析 (1) 绘制指针式的时钟和数字式的时钟图形时,要在CView 类下进行
其中 OnDraw()函数在绘制视图窗口时被调用, 在定义了画刷 CBrush 和画笔 CPen 之后,调用GetClientRect()定义屏幕大小并确定椭圆中心的坐标,然后调用 Ellipse 绘制椭圆,即指针式的时钟表盘,SetTextColor 绘制文本颜色,调用 MoveTo 和LineTo 绘制表盘指针,同时调用 CreateFont()创建数字钟字体,TextOut 则是用以数字钟的文本输出
(2) 模拟时钟处理消息的过程:首先调用 SetTimer 函数定义时钟消息,包括参数指定计时器的ID,消息产生的时间间隔,回调函数为 NULL;调用消息处理函数OnTimer()刷新窗口显示
在相应的WM_TIMER 消息处理里添加时钟消息响应代码;最后调用 KillTimer释放该时钟
(3) 要实