- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visual Basic
课 程 设 计 报 告
所属课程名称:Visual Basic程序设计
课程设计题号:29
课程设计题目:打字游戏
课程设计难度:3星
课程设计时间:2013.3.1 ~ 4.17
学 号:912101500310
姓 名: 石博博
自评成绩:90分
0
南京理工大学机械工程学院
二〇一三年三月
程序功能
功能要求:
(1)程序开始时是输入姓名,选择难度和速度以及进入游戏的界面.
(2)进入游戏界面后,字母从屏幕上方下落,打中一个字母加一分,打错一个减一分,若字母落到底部都一直未击中,则减十分.
(3)打字过程中,若想停止游戏,按ESC键,出现返回打字设置窗口的提示信息.;按F1键,出现键盘
(4)打字过程中,分数和时间显示在屏幕顶部,有音乐为伴,音乐停止,游戏结束;每打中一次就产生一次爆炸声及爆炸效果
(5)单击查看成绩按钮可以查询到历史记录。.
知识点:
1.控件数组;
2.声音的播放;
3.键盘事件的处理;
4.文本文件的读写;
5.多模块程序设计;
6.随机值得产生。
课程设计的详细设计
1、总体设计思路
设计思路:在Frmmain中设置相关的属性后按下“开始练习”按钮,程序跳出Frmzjm(主界面),打字游戏就此开始,游戏结果会进行记录,单击“查看结果”按钮就能查看游戏结果。过程中按下F1弹出键盘布局窗口,按下Esc按钮就会提示是否退出游戏,选择“是”就会退出并保存。
结构框图:
2、界面设计
窗体界面截图:
Frmjp:包含的控件有:图片框。主要用于显示键盘布局,按下F1时出现此界面。
Frmmain:包含的控件有:按钮,文本框,标签,框架。外观通过设置各个控件的相关属性得到。用于对游戏相关参数的设置,如输入游戏者姓名、选择游戏难度、速度、开始和结束游戏,以及对结果的查看。
Frmscore:包含的控件有:按钮,列表框。外观通过设置各个控件的相关属性得到。用于显示结果,包括游戏者姓名、得分、事件。按下“查看成绩”按钮时出现
Frmzjm:包含的控件有:标签,图片框,计时器和MMControl控件。外观通过设置各个控件的相关属性得到。
程序运行时的效果图:
3、功能模块设计
主要功能及实现算法:
1. Frmmain:包含姓名输入框、难度和速度选择按钮,单击开始按钮就可以进行游戏了。若未输入姓名就单击“开始练习”按钮或“查看成绩”按钮,则提示用户输入姓名
2. Frmzjm:进入游戏后,根据难度和速度的选择,屏幕上随机产生并落下各种字符,根据用户对键盘的敲击而进行判断并进行计分。该过程的时间长度有背景音乐控制,“BackMusic.mid”文件长约70秒,音乐停止,游戏结束,保存结果。过程中按下F1弹出键盘布局窗口,按下Esc按钮就会提示是否退出游戏,选择“是”就会退出并保存。
3.Frmscore:分数查询窗口,单击“返回”退出Frmscore,弹出Frmmain.
4.Frmjp:键盘布局窗口
设计中遇到的问题与解决办法
【问题1】:速度和难度的选择
【解决办法】:通过将速度选择的三个按钮和难度选择的三个按钮设置为控件数组而实现这个功能
【问题2】:游戏时间的设置,即Lbltime的计时事件
【解决办法】:通过代码实现:
Private Sub Timer2_Timer() 用于控制打字时间
Static m As Integer, s As Integer
s = s + 1
If s = 60 Then
m = s \ 60
s = 0
End If
Lbltime.Caption = m : s
End Sub
【问题3】:背景音乐的播放
【解决办法】:通过掌握对MMControl控件的使用方法,实现了游戏一开始就会播放背景音乐的效果。代码如下:
MMControl1.FileName = App.Path \BackMusic.mid
MMControl1.Command = open
MMControl1.Command = play
当背景音乐停止时,游戏结束,弹出提示框。代码如下:
Private Sub MMControl1_Done(NotifyCode As Integer) 控制音乐
MMControl1.Command = close
If MsgBox(Frmmain.Textname.Text ,本次练习您的成绩是 score 分。游戏结束,继续吗?
文档评论(0)