欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    模拟时钟的VB程序剖析(共15页).doc

    • 资源ID:16801264       资源大小:166KB        全文页数:15页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    模拟时钟的VB程序剖析(共15页).doc

    精选优质文档-倾情为你奉上沈 阳 航 空 航 天 大 学 课程设计学 号 55班 级 姓 名 李超指导教师 刘学平2010 年 3 月 15 日专心-专注-专业沈阳航空航天大学课程设计任务书学院:航空宇航工程学院 专业:飞行器制造 班级:学号:55 题目:模拟时钟一、课程设计时间2011年3月7日11日(第1周),共计1周。二、课程设计内容在窗体上演示一个正在工作的有时、分、秒指针的时钟,要求:可以对时钟的时间进行手工修正。用户界面中的菜单(或命令按钮)至少应包括“运行时钟”、“修改时间”、 “退出”3项。三、课程设计要求程序质量:² 贯彻事件驱动的程序设计思想。² 用户界面友好,功能明确,操作方便;可以增加其它功能或修饰。² 代码应适当缩进,并给出必要的注释,以增强程序的可读性。课程设计说明书:² 课设结束后,上交课程设计说明书和源程序。课程设计说明书的内容参见提供的模板。四、指导教师和学生签字指导教师:_ 学生签名:_五、成绩六、教师评语目 录一、需求分析“模拟时钟”软件。在窗体上演示一个正在工作的有时、分、秒指针的时钟,要求:可以对时钟的时间进行手工修正。用户界面中的菜单(或命令按钮)至少应包括“运行时钟”、“修改时间”、 “退出”3项。在VB窗体Form1中设计模拟时钟表盘,设计四个按钮:运行时钟、修改时间、应用、退出。在窗体Form2中设计填输入时间的位置和两个按钮:重新输入、确定。用运行时钟按钮使时钟从零点开始运行。利用修改时间按钮在Form2中输入合理时间,单击确定后单击应用使模拟时钟按所需时间开始运行。Form2中重新输入按钮可以使所有Text控件清空,可以进行时间的重新输入。程序可以实现时钟指针的转动。二、设计分析(1) 基本原理:设计表盘,利用勾股定理实现时钟的转动,通过两个窗体的配合实现修改时间的功能,使模拟时钟能像正常时钟一样运行。(2) 总体设计:总系统窗体1的功能设置窗体2的功能设置窗体1和窗体2的配合图1 总体设计(3) 详细设计:开始创建工程Form1的表盘设计Form2的界面设计Form1与Form2的连接指针与表盘的组合设计读取所输入的时间对按钮的程序设计图2 详细设计(4)表盘设计: 图3 表格三、关键技术1实现指针的转动Private Sub Timer1_Timer() Static s!, m!, h! s = s + 1 m = s / 60 h = m / 60 LineS.X2 = LineS.X1 + a * Sin(s * 6 * pai / 180) LineS.Y2 = LineS.Y1 - a * Cos(s * 6 * pai / 180) LineM.X2 = LineM.X1 + b * Sin(m * 6 * pai / 180) LineM.Y2 = LineM.Y1 - b * Cos(m * 6 * pai / 180) LineH.X2 = LineH.X1 + c * Sin(h * 30 * pai / 180) LineH.Y2 = LineH.Y1 - c * Cos(h * 30 * pai / 180) End Sub '使时钟从初始位置开始工作 图4 2 Form1与Form2的连接(1)显示Form2Private Sub Command2_Click() Timer2.Interval = 0 Timer1.Interval = 0 Form2.Show '关闭定时器1、定时器2,对时间进行手工修改End Sub 图5 (2)Form2隐藏Private Sub Command1_Click() If Val(Text1.Text) > 24 Or Val(Text1.Text) < 0 Or Val(Text2.Text) > 60 Or Val(Text2.Text) < 0 Or Val(Text3.Text) > 60 Or Val(Text3.Text) < 0 Then MsgBox "请输入合理时间": Text1.Text = "": Text2.Text = "": Text3.Text = "" '数据不合理时弹出提示 Else Form1.Show Form2.Hide '读取到修改后的时间数据并关闭窗体2 End IfEnd Sub 注:输入的时间不合理会弹出提示,输入时间为空时也会弹出提示 图6 图73.修改的时间数据的读取与运行Private Sub Command4_Click() If Form2.Text1.Text = "" Or Form2.Text2.Text = "" Or Form2.Text3.Text = "" Then MsgBox "请输入准确时间": Form2.Show '提示用户输入准确时间 Else Timer2.Interval = 1000: s = Form2.Text3.Text - 1 '激活定时器2 End IfEnd SubPrivate Sub Timer2_Timer() s = s + 1 m = Form2.Text2.Text + s / 60 h = Form2.Text1.Text + m / 60 LineS.X2 = LineS.X1 + a * Sin(s * 6 * pai / 180) LineS.Y2 = LineS.Y1 - a * Cos(s * 6 * pai / 180) LineM.X2 = LineM.X1 + b * Sin(m * 6 * pai / 180) LineM.Y2 = LineM.Y1 - b * Cos(m * 6 * pai / 180) LineH.X2 = LineH.X1 + c * Sin(h * 30 * pai / 180)LineH.Y2 = LineH.Y1 - c * Cos(h * 30 * pai / 180) End Sub '使时钟在修改时间后开始四、总结 本次课程设计我的任务是运用VB设计一个模拟时钟,包含运行时钟、修改时间、应用、退出等功能。程序需要两个窗体、两个Timer控件以及四个按钮控件:运行时钟、修改时间、应用、退出。可实现与正常时钟相同的运行速度。可以进行手动的修改、运行时钟。还可以对用户输入的时间数据进行判断。 在此次课设过程中,设计界面使我了解到手工绘图方面的一些控件,现在可以进行熟练的运用。Timer控件的运行方法让我用尽了心思,对于指针的初始位置的设置,我运用到了控件的尺寸,指针的长度设置我运用到了勾股定理,为了美观和人性化处理对各个功能之间的显示与切换我下个很大功夫。 VB的设计过程让我深刻认识到知识的有用之处,这是一个即动手又动脑的一次实习。让我意识到VB的魅力所在,它使我们能形象的了解到生活中的一些具体事物,使我们锻炼了自己的动手能力,发挥了自己的智慧。让我们发现自己的不足,认识到更多我们所没有触及的知识。虽然这次设计出现很多困难的,但是在老师和学生的帮助下我终于做出来了,我感到很开心,毕竟是自己的劳动成果。很高兴可以完成这次课设,它让我懂得只有努力才有收获。五、完整的源程序Private Sub Command3_Click() End '结束程序End SubPrivate Sub Command4_Click() If Form2.Text1.Text = "" Or Form2.Text2.Text = "" Or Form2.Text3.Text = "" Then MsgBox "请输入准确时间": Form2.Show '提示用户输入准确时间 Else Timer2.Interval = 1000: s = Form2.Text3.Text - 1 '激活定时器2 End IfEnd SubPrivate Sub Form_Load() LineS.X1 = Shape1.Left + Shape1.Width / 2 LineS.Y1 = Shape1.Top + Shape1.Height / 2 LineS.X2 = LineS.X1 LineS.Y2 = Shape1.Top + 150 '设置秒针初始位置 LineM.X1 = LineS.X1 LineM.Y1 = LineS.Y1 LineM.X2 = LineM.X1 LineM.Y2 = Shape1.Top + 260 '设置分针初始位置 LineH.X1 = LineS.X1 LineH.Y1 = LineS.Y1 LineH.X2 = LineH.X1 LineH.Y2 = Shape1.Top + 500 '设置时针初始位置 a = Sqr(LineS.X1 - LineS.X2) 2 + (LineS.Y1 - LineS.Y2) 2) b = Sqr(LineM.X1 - LineM.X2) 2 + (LineM.Y1 - LineM.Y2) 2) c = Sqr(LineH.X1 - LineH.X2) 2 + (LineH.Y1 - LineH.Y2) 2) '设置指针长度 LineS.BorderColor = vbBlack LineS.BorderWidth = 1 LineM.BorderColor = vbBlue LineM.BorderWidth = 2 LineH.BorderColor = vbRed LineH.BorderWidth = 3 '设置指针的颜色和粗细End SubPrivate Sub Timer1_Timer() Static s!, m!, h! s = s + 1 m = s / 60 h = m / 60 LineS.X2 = LineS.X1 + a * Sin(s * 6 * pai / 180) LineS.Y2 = LineS.Y1 - a * Cos(s * 6 * pai / 180) LineM.X2 = LineM.X1 + b * Sin(m * 6 * pai / 180) LineM.Y2 = LineM.Y1 - b * Cos(m * 6 * pai / 180) LineH.X2 = LineH.X1 + c * Sin(h * 30 * pai / 180)LineH.Y2 = LineH.Y1 - c * Cos(h * 30 * pai / 180) End Sub '使时钟从初始位置开始工作Private Sub Timer2_Timer() s = s + 1 m = Form2.Text2.Text + s / 60 h = Form2.Text1.Text + m / 60 LineS.X2 = LineS.X1 + a * Sin(s * 6 * pai / 180) LineS.Y2 = LineS.Y1 - a * Cos(s * 6 * pai / 180) LineM.X2 = LineM.X1 + b * Sin(m * 6 * pai / 180) LineM.Y2 = LineM.Y1 - b * Cos(m * 6 * pai / 180) LineH.X2 = LineH.X1 + c * Sin(h * 30 * pai / 180)LineH.Y2 = LineH.Y1 - c * Cos(h * 30 * pai / 180) End Sub '使时钟在修改时间后开始工作六、参考文献1 刘瑞新Visual Basic程序设计教程.北京:机械工业出版社,20032 龚沛增.Visual Basic程序设计教程.清华大学出版社,20043 吴凤翔.Visual Basic程序设计教程.中国林业出版社,2002-11

    注意事项

    本文(模拟时钟的VB程序剖析(共15页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开