- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
模拟时钟转动程序设计说明书
摘要 - 2 -
1 引言 - 3 -
1.1 选题背景 - 3 -
1.2 任务与分析 - 3 -
2 方案设计 - 4 -
3 界面设计 - 5 -
4 代码设计及程序调试 - 6 -
总结与体会 - 10 -
致谢 - 11 -
参考文献 - 12 -
摘 要
随着计算机的不断更新发展,计算机图形操作和动画设计扮演着极为重要的角色, Windows环境下的Visual Basic提供了丰富的图形功能。本文主要通过对选题背景、方案设计、界面设计、代码编写及调试以及软件使用说明等的介绍,介绍了作者利用Visual Basic对“模拟时钟转动”程序的开发设计过程。
关键词:Visual Basic 模拟时钟转动 程序设计
1 引 言
1.1 选题背景
通过一年来对Visual Basic 高级语言程序设计的学习,我已经掌握了一些常用的控件的使用方法,对简单的程序设计的常用算法也有了一定的了解,还掌握了对图形和动画的一些基本操作。为了进一步加深理解、验证、巩固课堂教学内容,加深对可视化编程思想的理解,强化Visual Basic对程序流程控制、常用控件的属性、事件、方法的理解和使用;为了进一步提高编程能力、程序的调试能力,理论联系实际的能力;巩固所学的这些程序设计的方法,为了达到后续课程对实际编程计算能力的要求,特选定“模拟时钟转动程序设计”这个寓教于乐的小题目作为课程设计实践教学环节的题目,有助于培养综合运用所学知识解决实际问题的能力,可以充分发挥想象力和创新能力;有助于提高独立思考能力,自学能力和团队协作能力。
1.2 任务与分析
任务的具体内容:设计一个类似于Windows“时钟”的程序,并用数字显示时间。在界面显示一个活动时钟,能模拟机械钟表行走,还要准确的利用数字显示时间。
任务具体要求:要求遵循面向对象和结构化程序设计的编程思路,设计合理的界面,设置所需控件及其属性,编写相应的事件过程,并上机调试程序,在基本要求达到后,进行一定创新设计。并编写规范的设计说明书一份。
软件的预期功能:实现石英钟表式的能够有指针运动的时钟显示。
2 方案设计
显示一个动画时钟,该时针随着每一秒而动态变化。 BaseX = Me.ScaleWidth / 2 , BaseY = Me.ScaleHeight / 2),以及圆的半径大小R = BaseX * 0.8
(2)绘图方法中的line来绘制指针
通过圆心的确定就能确定指针的起点坐标,从而设计指针的长度和两端点坐标,起点坐标为(BaseX + (R - 15) * Sin(i * PI / 180), BaseY - (R - 15) * Cos(i * PI / 180)),终点坐标为( BaseX + R * Sin(i * PI / 180), BaseY - R * Cos(i * PI / 180))
(3)利用Timer控件来控制指针的绘制和运动
将Timer控件的Interval属性设为100毫秒,即是1秒触动一次时间,从而通过调用DrawClock, Biaopan子过程每一秒画一次表盘
(4)子过程,子函数
在程序中通过DrawClock, Biaopan子过程来画表盘和指针,每一次调用子过程,画出下一秒的指针,以及用背景色为白色色上一秒的指针线掩盖原来的指针。
3界面设计
简易时钟设计程序的模拟时钟运行界面如图所示
程序运行界面
将Form窗口设计为5000*5000的正方形,所取的圆的直径为窗体宽度的0.8倍,在界面中就可以依次设计出1—12数字label的位置,秒针每转动一格指针转过的角度为6度,就可以计算出秒针末端的坐标((BaseX + R * Sin(i * PI / 180), BaseY - R * Cos(i * PI / 180)4 代码设计及程序调试
第一步,先新建一个工程,然后用“工具箱”中的工具加入一个Timer1Const PI = 3.1415926
Dim BaseX As Integer, BaseY As Integer, R As Integer
Dim r1 As Integer, r2 As Integer, r3 As Integer
第二步,绘制表盘的的代码,首先寻找圆心,将整个圆周先分为360份,每30份为1次绘制小时,再利用三角函数计算出每一分钟的刻度应该的坐标,画线,再沿分钟的刻度用circle函数边缘画出表盘的圆圈。
Private Sub biaopan()
Dim i As Integer
BaseX = Me.ScaleWidth / 2
BaseY = Me.ScaleHe
文档评论(0)