打地鼠_VB课程设计

目 录

第1章 课程设计目的与要求 ..................................................................................................... 1

1.1 课程设计目的 . .......................................................................................................... 1 1.2 课程设计的实验环境 . .............................................................................................. 1 1.3 课程设计的预备知识 . .............................................................................................. 1 1.4 课程设计要求 . .......................................................................................................... 1

第2章 课程设计内容....................................................................................................... 2

2.1 游戏介绍 . .................................................................................................................. 2 2.2 游戏设计 . .................................................................................................................. 3 2.3 游戏实现 . .................................................................................................................. 12

第3章 课程设计总结....................................................................................................... 14 参考文献 ................................................................................................................................ 15

第1章 课程设计目的与要求

1.1 课程设计目的

本课程的课程设计实际是学生学习完《可视化编程技术》课程后,进行的一次全面的综合训练,其目的在于加深对可视化编程技术基本知识的理解,掌握运用VB 开发应用程序的基本方法及基本技巧。 1.2 课程设计的实验环境

硬件要求能运行Windows 9.X操作系统的微机系统。 软件:Microsoft Visual Basic 6.0 1.3 课程设计的预备知识

熟悉Visual Basic 6.0程序设计的基本语法知识及常用技巧。 1.4 课程设计要求

按课程设计指导书提供的课题,每个小组设计一个完整的小游戏应用程序。要求根据规定设计游戏的具体要求,按照应用程序的设计步骤和VB 的基本知识应用程序的分析与实现。应根据后面给出的基本学时分配合理安排设计时间,并独立完成各方面的设计。选择同一题目的同学,可以共同协作完成一个应用程序的开发任务。要求书写详细的设计说明书,对有复杂的代码段和程序段的部分,应画出程序流程图,写出全部的代码。在界面设计中,需画出每个窗体的布局,进行属性说明,杜绝雷同。

第2章 课程设计内容

2.1游戏介绍

2.1.1 游戏规则

打地鼠是一种非常有趣的益智游戏。游戏进行时,地鼠不断从洞中探出头再缩回去,当地鼠头在洞外时,可以通过按键的方式打击地鼠,时间到时游戏结束,打中地鼠次数越多得分越高,击错、逃跑数越多得分越低。在英雄榜中保留前五名最高得分信息。

2.1.2 游戏说明

进入“游戏”选择“打地鼠”, 选择“开始/帮助/英雄榜”,按ok 键确认选项, 鼠标左键敲打地鼠。

鼠标左右键都可打击想、要能更快的打到地鼠连续打击左右键,那能加快打地鼠的次数。

2.2游戏设计

2.2.1 界面设计:

打开标准EXE 工程,先添加一个Label 控件,属性为“得分”,然后再添加一个时间控件Timer ,然后在添加5个图片控件,分别为Image1,Image2,Image3,Image4,Image5。然后在在5个图片控件中分别添加。

如下图2.1所示。

图2.1 游戏开始界面

2.2.2 属性设置

Command1的属性设置为:开始 Command2的属性设置为:结束 计时器(Timer )的属性设置为: Enabled 设置为:Fslse Interval 设置为:700

2.2.3 编程思路及代码

Dim 鼠X As Single Dim 鼠Y As Single Dim 地鼠 As Byte Dim 对数 As Integer Dim 总数 As Integer Sub 判断(X, Y) Select Case 地鼠 Case 0, 1, 2 X = 地鼠 Y = 0 Case 3, 4, 5 X = 地鼠 - 3 Y = 1 Case 6, 7, 8 X = 地鼠 - 6 Y = 2 End Select End Sub

Private Sub Form_Load() Randomize

Show Print

For 地鼠 = 0 To 8 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y Next 总数 = 1 End Sub

Private Sub Form_Load() Randomize Show Print

For 地鼠 = 0 To 8 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y Next 总数 = 1 End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move X - Image1.Width / 2, Y - Image1.Height / 2 鼠X = Image1.Left 鼠Y = Image1.Top Timer1.Enabled = True Label2.Caption = "运行中..." End Sub

Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image3.Picture xy = 99

If 鼠X > 800 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 1850 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 2900 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 地鼠 = xy Then 对数 = 对数 + 1

Label1.Caption = "打中次数 :" & 对数 判断 X, Y

Form1.PaintPicture Image6.Picture, 1000 + 1050 * X, 1000 + 1050 * Y End If End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move 鼠X - (Image1.Width / 2 - X), 鼠Y - (Image1.Height / 2 - Y) 鼠X = Image1.Left 鼠Y = Image1.Top End Sub

Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image2.Picture End Sub

Private Sub Timer1_Timer() 总数 = 总数 + 1 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y 地鼠 = Int(Rnd * 9) 判断 X, Y

Form1.PaintPicture Image4.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 总数 > 100 Then Timer1.Enabled = False 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 对数 > 100 Then

msg = MsgBox("恭喜" + Chr(13) + " 你以经爆机了,还要继续吗?", vbYesNo, " 地鼠娱乐部") Else

msg = MsgBox("你以经过关了,您打中了" & 对数 & " 次。还要继续吗?", vbYesNo, " 地鼠娱乐部") End If

If msg = vbYes Then 总数 = 1 对数 = 0

Timer1.Enabled = True Else Unload Me End If End If End Sub

Private Sub 犯得上_Click(Index As Integer)

End End Sub

Private Sub 关于_Click()

MsgBox " 地鼠娱乐部" + Chr(13) + Chr(13) + "这是一个基于Windows98以上操作系统下" + Chr(13) + _

" 用VB 编写的程序", , "地鼠娱乐部" End Sub

Private Sub 使用_Click()

MsgBox "欢迎来到地鼠娱乐部" + Chr(13) + "使用说明:" + Chr(13) + "鼠标左右键都可打击" _

+ "想要能更快的打到地鼠连续打击左右键," + Chr(13) + "那能加快打地鼠的次数", , "地鼠娱乐部" End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move X - Image1.Width / 2, Y - Image1.Height / 2 鼠X = Image1.Left 鼠Y = Image1.Top Timer1.Enabled = True Label2.Caption = "运行中..." End Sub

Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image3.Picture xy = 99

If 鼠X > 800 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 1850 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 2900 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 地鼠 = xy Then 对数 = 对数 + 1

Label1.Caption = "打中次数 :" & 对数 判断 X, Y

Form1.PaintPicture Image6.Picture, 1000 + 1050 * X, 1000 + 1050 * Y End If End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move 鼠X - (Image1.Width / 2 - X), 鼠Y - (Image1.Height / 2 - Y) 鼠X = Image1.Left 鼠Y = Image1.Top End Sub

Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image2.Picture End Sub

Private Sub Timer1_Timer() 总数 = 总数 + 1 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y 地鼠 = Int(Rnd * 9) 判断 X, Y

Form1.PaintPicture Image4.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 总数 > 100 Then Timer1.Enabled = False 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 对数 > 100 Then

msg = MsgBox("恭喜" + Chr(13) + " 你以经爆机了,还要继续吗?", vbYesNo, " 地鼠娱乐部") Else

msg = MsgBox("你以经过关了,您打中了" & 对数 & " 次。还要继续吗?", vbYesNo, " 地鼠娱乐部") End If

If msg = vbYes Then 总数 = 1 对数 = 0

Timer1.Enabled = True Else Unload Me End If End If End Sub

Private Sub 犯得上_Click(Index As Integer) End End Sub

Private Sub 关于_Click()

MsgBox " 地鼠娱乐部" + Chr(13) + Chr(13) + "这是一个基于Windows98以上操作系统下" + Chr(13) + _

" 用VB 编写的程序", , "地鼠娱乐部" End Sub

Private Sub 使用_Click()

MsgBox "欢迎来到地鼠娱乐部" + Chr(13) + "使用说明:" + Chr(13) + "鼠标左右键都可打击" _

+ "想要能更快的打到地鼠连续打击左右键," + Chr(13) + "那能加快打地鼠的次数", , "地鼠娱乐部" End Sub

2.3 游戏实现

2.3.1程序调试及测试:

程序调试的操作步骤如下:

(1)建立一标准EXE 工程,将这一模块程序添加到工程中。如果你是通过双击标准模块程序Model1.BAS 进入Visual Basic系统的,则首先需要添加一个窗体模块。

(2)将该标准模块程序Model1.BAS 中代码的指定的错误修改正确或在指定的空位填上适当的语句,并在窗体模块中编写代码(常常写在窗体的Click()事件中)调用标准模块中的Sub 过程或用户自定义函数(如果在标准模块程序Model1.BAS 有多个过程或函数,要注意调用的先后顺序,否则得不到正确结果),调试运行程序,使其能输出正确结果。

(3)按要求保存工程 程序功能测试如下:

经过代码测试正确的程序只是基本上验证了程序逻辑上的正确性,但并不能验证程序是否满足程序说明书中定义的功能,也不能验证测试数据本身是否完备。程序功能测试则面向程序应用环境,把程序看做一个“黑匣子”,认为程序只要满足应用功能上的需求,就是可行的。 2.3.2游戏运行

此图是为进入游戏界面,单击开始按钮,游戏开始运行,此时单击鼠标左键进行游戏,如果中途放弃,单击结束按钮。如图2.3 所示:

图2.2 游戏运行界面

此图为运行中图片,单击左键进行操作,用鼠标控制悬空的小锤砸地鼠,砸到就加分,依次累计,分高则过关。

如图2.4 所示:

图2.3游戏运行中界面

此图为游戏结束界面,在游戏中会对打击地鼠次数进行累计并显示在操作界面上,分数达到一定时就过关。

如图2.5 所示:

图2.4 游戏结束界面

第3章 课程设计总结

通过一个学期的学习,我认为要学好vb 语言程序设计这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践才能增强和巩固我得知识。特别是作为高职生,更要注重实践这一环节,只有这样我们才能成为合格的电子专业人材。

这不,我们的动手机会来了,我们这组做的是打地鼠游戏的设计,对我来说是有一点难度的,但是通过两周的课程设计,我有很多有关于vb 课程设计方面的心得体会,当我刚刚接触这个课程设计的时候,我感觉对我来说有些棘手,我根本不知道从何开始下手,但是在老师和同学的帮助下,我终于完成了这次课设。我想没有他们我可能都要放弃了,因为我本人对动手做vb 课设也并不是很熟悉,学的东西好像它是它,我是我似的,理论联系不了实际。以前的c 语言学的就是东一半西一半的,而且这么长时间没有接触c 语言了有些东西都还给上帝了。毕竟c 语言是所有语言的基础,学好c 语言其他的计算机语言就会学得轻松的多了。一开始的程序这块儿我就有一点抓狂了。因为我写的程序得有一半是错的。后来请教我们班的同学和我们的老师,每次跟他们一起到试验室调试程序,看老师边做边给我们讲解。最后在计算机上做出来的时候,虽然不是我们自己写的,但是也有我们自己思考而且做出来的成果,我也有一种分享到的成就感。

通过这次vb 课程设计,我感觉到了课程设计是培养学生综合运用所学知识, 发现, 提出, 分析和解决实际问题, 锻炼实践能力的重要环节, 是对学生实际工作能力的具体训练和考察过程. 随着科学技术发展的日新日异,使用各种编程语言编写各种软件和游戏等已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学生来说掌握vb 编程设计语言以及其他的汇编语言的开发技术是十分重要的。所以虽然课社结束了,但我会继续学习vb 编程语言教程。

回顾起此次vb 课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过

的知识重新温故。

这次课程设计终于顺利完成了,在设计中遇到了很多困难和问题,最后在王凤英老师的辛勤指导下,终于游逆而解。同时,在王凤英老师的身上我学得到很多实用的知识,在次我表示感谢!同时,我也要感谢给过我帮助的同学们,因为我们一组的同学在一起研究和思考才能完成这次课程设计。

参考文献

1.李一金,丁伟等编写,《Visual Basic 6.0标准教程》,北京希望电子出版社 2.黄学中编著,《Visual Basic 6.0教程》, 北京科海集团公司 3.杨善林,冯光为等编著,《Visual Basic学习教程》,北京大学出版社 4. 赵建敏 , 《Visual Basic 6.0 程序开发指南》, 航空工业出版社 5. 刘胜雷 , 《Visual Basic 6.0 开发使用手册》, 机械工业出版社 6. 魏东 魏民 , 《Oracle 与 Visual Basic 编程指南》, 电子工业出版社 7. 刘瑞新 , 《Visual Basic 6.0 程序设计教程》, 机械工业出版社

8.王力华 编著,《Visual Basic 6.0时尚编程百例》,机械工业大学出版社 9.张雪 编著,《Visual Basic编程高手》,人民大学出版社 10.田梅 编著,《Visual Basic 5.0代码设计》,人民邮电出版社

目 录

第1章 课程设计目的与要求 ..................................................................................................... 1

1.1 课程设计目的 . .......................................................................................................... 1 1.2 课程设计的实验环境 . .............................................................................................. 1 1.3 课程设计的预备知识 . .............................................................................................. 1 1.4 课程设计要求 . .......................................................................................................... 1

第2章 课程设计内容....................................................................................................... 2

2.1 游戏介绍 . .................................................................................................................. 2 2.2 游戏设计 . .................................................................................................................. 3 2.3 游戏实现 . .................................................................................................................. 12

第3章 课程设计总结....................................................................................................... 14 参考文献 ................................................................................................................................ 15

第1章 课程设计目的与要求

1.1 课程设计目的

本课程的课程设计实际是学生学习完《可视化编程技术》课程后,进行的一次全面的综合训练,其目的在于加深对可视化编程技术基本知识的理解,掌握运用VB 开发应用程序的基本方法及基本技巧。 1.2 课程设计的实验环境

硬件要求能运行Windows 9.X操作系统的微机系统。 软件:Microsoft Visual Basic 6.0 1.3 课程设计的预备知识

熟悉Visual Basic 6.0程序设计的基本语法知识及常用技巧。 1.4 课程设计要求

按课程设计指导书提供的课题,每个小组设计一个完整的小游戏应用程序。要求根据规定设计游戏的具体要求,按照应用程序的设计步骤和VB 的基本知识应用程序的分析与实现。应根据后面给出的基本学时分配合理安排设计时间,并独立完成各方面的设计。选择同一题目的同学,可以共同协作完成一个应用程序的开发任务。要求书写详细的设计说明书,对有复杂的代码段和程序段的部分,应画出程序流程图,写出全部的代码。在界面设计中,需画出每个窗体的布局,进行属性说明,杜绝雷同。

第2章 课程设计内容

2.1游戏介绍

2.1.1 游戏规则

打地鼠是一种非常有趣的益智游戏。游戏进行时,地鼠不断从洞中探出头再缩回去,当地鼠头在洞外时,可以通过按键的方式打击地鼠,时间到时游戏结束,打中地鼠次数越多得分越高,击错、逃跑数越多得分越低。在英雄榜中保留前五名最高得分信息。

2.1.2 游戏说明

进入“游戏”选择“打地鼠”, 选择“开始/帮助/英雄榜”,按ok 键确认选项, 鼠标左键敲打地鼠。

鼠标左右键都可打击想、要能更快的打到地鼠连续打击左右键,那能加快打地鼠的次数。

2.2游戏设计

2.2.1 界面设计:

打开标准EXE 工程,先添加一个Label 控件,属性为“得分”,然后再添加一个时间控件Timer ,然后在添加5个图片控件,分别为Image1,Image2,Image3,Image4,Image5。然后在在5个图片控件中分别添加。

如下图2.1所示。

图2.1 游戏开始界面

2.2.2 属性设置

Command1的属性设置为:开始 Command2的属性设置为:结束 计时器(Timer )的属性设置为: Enabled 设置为:Fslse Interval 设置为:700

2.2.3 编程思路及代码

Dim 鼠X As Single Dim 鼠Y As Single Dim 地鼠 As Byte Dim 对数 As Integer Dim 总数 As Integer Sub 判断(X, Y) Select Case 地鼠 Case 0, 1, 2 X = 地鼠 Y = 0 Case 3, 4, 5 X = 地鼠 - 3 Y = 1 Case 6, 7, 8 X = 地鼠 - 6 Y = 2 End Select End Sub

Private Sub Form_Load() Randomize

Show Print

For 地鼠 = 0 To 8 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y Next 总数 = 1 End Sub

Private Sub Form_Load() Randomize Show Print

For 地鼠 = 0 To 8 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y Next 总数 = 1 End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move X - Image1.Width / 2, Y - Image1.Height / 2 鼠X = Image1.Left 鼠Y = Image1.Top Timer1.Enabled = True Label2.Caption = "运行中..." End Sub

Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image3.Picture xy = 99

If 鼠X > 800 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 1850 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 2900 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 地鼠 = xy Then 对数 = 对数 + 1

Label1.Caption = "打中次数 :" & 对数 判断 X, Y

Form1.PaintPicture Image6.Picture, 1000 + 1050 * X, 1000 + 1050 * Y End If End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move 鼠X - (Image1.Width / 2 - X), 鼠Y - (Image1.Height / 2 - Y) 鼠X = Image1.Left 鼠Y = Image1.Top End Sub

Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image2.Picture End Sub

Private Sub Timer1_Timer() 总数 = 总数 + 1 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y 地鼠 = Int(Rnd * 9) 判断 X, Y

Form1.PaintPicture Image4.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 总数 > 100 Then Timer1.Enabled = False 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 对数 > 100 Then

msg = MsgBox("恭喜" + Chr(13) + " 你以经爆机了,还要继续吗?", vbYesNo, " 地鼠娱乐部") Else

msg = MsgBox("你以经过关了,您打中了" & 对数 & " 次。还要继续吗?", vbYesNo, " 地鼠娱乐部") End If

If msg = vbYes Then 总数 = 1 对数 = 0

Timer1.Enabled = True Else Unload Me End If End If End Sub

Private Sub 犯得上_Click(Index As Integer)

End End Sub

Private Sub 关于_Click()

MsgBox " 地鼠娱乐部" + Chr(13) + Chr(13) + "这是一个基于Windows98以上操作系统下" + Chr(13) + _

" 用VB 编写的程序", , "地鼠娱乐部" End Sub

Private Sub 使用_Click()

MsgBox "欢迎来到地鼠娱乐部" + Chr(13) + "使用说明:" + Chr(13) + "鼠标左右键都可打击" _

+ "想要能更快的打到地鼠连续打击左右键," + Chr(13) + "那能加快打地鼠的次数", , "地鼠娱乐部" End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move X - Image1.Width / 2, Y - Image1.Height / 2 鼠X = Image1.Left 鼠Y = Image1.Top Timer1.Enabled = True Label2.Caption = "运行中..." End Sub

Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image3.Picture xy = 99

If 鼠X > 800 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 1850 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 鼠X > 2900 And 鼠X

If 鼠Y + 1500 > 1600 And 鼠Y + 1500 2650 And 鼠Y + 1500 3700 And 鼠Y + 1500

If 地鼠 = xy Then 对数 = 对数 + 1

Label1.Caption = "打中次数 :" & 对数 判断 X, Y

Form1.PaintPicture Image6.Picture, 1000 + 1050 * X, 1000 + 1050 * Y End If End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Move 鼠X - (Image1.Width / 2 - X), 鼠Y - (Image1.Height / 2 - Y) 鼠X = Image1.Left 鼠Y = Image1.Top End Sub

Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1.Picture = Image2.Picture End Sub

Private Sub Timer1_Timer() 总数 = 总数 + 1 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y 地鼠 = Int(Rnd * 9) 判断 X, Y

Form1.PaintPicture Image4.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 总数 > 100 Then Timer1.Enabled = False 判断 X, Y

Form1.PaintPicture Image5.Picture, 1000 + 1050 * X, 1000 + 1050 * Y If 对数 > 100 Then

msg = MsgBox("恭喜" + Chr(13) + " 你以经爆机了,还要继续吗?", vbYesNo, " 地鼠娱乐部") Else

msg = MsgBox("你以经过关了,您打中了" & 对数 & " 次。还要继续吗?", vbYesNo, " 地鼠娱乐部") End If

If msg = vbYes Then 总数 = 1 对数 = 0

Timer1.Enabled = True Else Unload Me End If End If End Sub

Private Sub 犯得上_Click(Index As Integer) End End Sub

Private Sub 关于_Click()

MsgBox " 地鼠娱乐部" + Chr(13) + Chr(13) + "这是一个基于Windows98以上操作系统下" + Chr(13) + _

" 用VB 编写的程序", , "地鼠娱乐部" End Sub

Private Sub 使用_Click()

MsgBox "欢迎来到地鼠娱乐部" + Chr(13) + "使用说明:" + Chr(13) + "鼠标左右键都可打击" _

+ "想要能更快的打到地鼠连续打击左右键," + Chr(13) + "那能加快打地鼠的次数", , "地鼠娱乐部" End Sub

2.3 游戏实现

2.3.1程序调试及测试:

程序调试的操作步骤如下:

(1)建立一标准EXE 工程,将这一模块程序添加到工程中。如果你是通过双击标准模块程序Model1.BAS 进入Visual Basic系统的,则首先需要添加一个窗体模块。

(2)将该标准模块程序Model1.BAS 中代码的指定的错误修改正确或在指定的空位填上适当的语句,并在窗体模块中编写代码(常常写在窗体的Click()事件中)调用标准模块中的Sub 过程或用户自定义函数(如果在标准模块程序Model1.BAS 有多个过程或函数,要注意调用的先后顺序,否则得不到正确结果),调试运行程序,使其能输出正确结果。

(3)按要求保存工程 程序功能测试如下:

经过代码测试正确的程序只是基本上验证了程序逻辑上的正确性,但并不能验证程序是否满足程序说明书中定义的功能,也不能验证测试数据本身是否完备。程序功能测试则面向程序应用环境,把程序看做一个“黑匣子”,认为程序只要满足应用功能上的需求,就是可行的。 2.3.2游戏运行

此图是为进入游戏界面,单击开始按钮,游戏开始运行,此时单击鼠标左键进行游戏,如果中途放弃,单击结束按钮。如图2.3 所示:

图2.2 游戏运行界面

此图为运行中图片,单击左键进行操作,用鼠标控制悬空的小锤砸地鼠,砸到就加分,依次累计,分高则过关。

如图2.4 所示:

图2.3游戏运行中界面

此图为游戏结束界面,在游戏中会对打击地鼠次数进行累计并显示在操作界面上,分数达到一定时就过关。

如图2.5 所示:

图2.4 游戏结束界面

第3章 课程设计总结

通过一个学期的学习,我认为要学好vb 语言程序设计这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践才能增强和巩固我得知识。特别是作为高职生,更要注重实践这一环节,只有这样我们才能成为合格的电子专业人材。

这不,我们的动手机会来了,我们这组做的是打地鼠游戏的设计,对我来说是有一点难度的,但是通过两周的课程设计,我有很多有关于vb 课程设计方面的心得体会,当我刚刚接触这个课程设计的时候,我感觉对我来说有些棘手,我根本不知道从何开始下手,但是在老师和同学的帮助下,我终于完成了这次课设。我想没有他们我可能都要放弃了,因为我本人对动手做vb 课设也并不是很熟悉,学的东西好像它是它,我是我似的,理论联系不了实际。以前的c 语言学的就是东一半西一半的,而且这么长时间没有接触c 语言了有些东西都还给上帝了。毕竟c 语言是所有语言的基础,学好c 语言其他的计算机语言就会学得轻松的多了。一开始的程序这块儿我就有一点抓狂了。因为我写的程序得有一半是错的。后来请教我们班的同学和我们的老师,每次跟他们一起到试验室调试程序,看老师边做边给我们讲解。最后在计算机上做出来的时候,虽然不是我们自己写的,但是也有我们自己思考而且做出来的成果,我也有一种分享到的成就感。

通过这次vb 课程设计,我感觉到了课程设计是培养学生综合运用所学知识, 发现, 提出, 分析和解决实际问题, 锻炼实践能力的重要环节, 是对学生实际工作能力的具体训练和考察过程. 随着科学技术发展的日新日异,使用各种编程语言编写各种软件和游戏等已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学生来说掌握vb 编程设计语言以及其他的汇编语言的开发技术是十分重要的。所以虽然课社结束了,但我会继续学习vb 编程语言教程。

回顾起此次vb 课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过

的知识重新温故。

这次课程设计终于顺利完成了,在设计中遇到了很多困难和问题,最后在王凤英老师的辛勤指导下,终于游逆而解。同时,在王凤英老师的身上我学得到很多实用的知识,在次我表示感谢!同时,我也要感谢给过我帮助的同学们,因为我们一组的同学在一起研究和思考才能完成这次课程设计。

参考文献

1.李一金,丁伟等编写,《Visual Basic 6.0标准教程》,北京希望电子出版社 2.黄学中编著,《Visual Basic 6.0教程》, 北京科海集团公司 3.杨善林,冯光为等编著,《Visual Basic学习教程》,北京大学出版社 4. 赵建敏 , 《Visual Basic 6.0 程序开发指南》, 航空工业出版社 5. 刘胜雷 , 《Visual Basic 6.0 开发使用手册》, 机械工业出版社 6. 魏东 魏民 , 《Oracle 与 Visual Basic 编程指南》, 电子工业出版社 7. 刘瑞新 , 《Visual Basic 6.0 程序设计教程》, 机械工业出版社

8.王力华 编著,《Visual Basic 6.0时尚编程百例》,机械工业大学出版社 9.张雪 编著,《Visual Basic编程高手》,人民大学出版社 10.田梅 编著,《Visual Basic 5.0代码设计》,人民邮电出版社


相关内容

  • 论文范文--FLASH
  • 2011届毕业生论文 论文题目:<FLASH MV制作> -FLASH MV星月神话 学院名称:泉州纺织服装职业学院 学生姓名: 系 别: 计 算 机 专 业: 计算机应用技术 _ 班 级: 〈1〉班 指导老师: 张 朱 玲 泉 州 纺 织 服 装 职 业 学 院 2011 年 11 月 ...

  • N多毕业设计题目
  • 基于Ajax技术的WEB应用的设计 又快到毕业的时候了,大家该准备做毕业设计了.大学问问特意收集了一些毕业设计(论文)的题目,供大家选择. VB售楼管理系统 VB无纸化考试系统 VB小区物业管理系统 VB航空公司管理信息系统 VB计算机机房管理系统 VB房地产评估系统VB+SQL2000 VB光盘信 ...

  • [算法与程序设计]VB教案集
  • 1-1节 计算机解决问题的过程 一. 教学目标 1. 知识与技能 (1) 让学生了解算法.穷举法.程序设计语言.编写程序和调试程序等概念. (2) 让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述. (3) 让学生理解分析问题.设计算法.编写程序.调试程序这一用计算机解决问 ...

  • 2012科研设计-8-范例论文解读-2
  • 福建医科大学硕士研究生< 福建医科大学硕士研究生<医学科研设计> 医学科研设计>课程福建医科大学硕士研究生< 福建医科大学硕士研究生<医学科研设计> 医学科研设计>课程-Ⅱ一.科学研究基本过程与科学思维 二.科研课题基本环节及其筹划 三.实验设计基本方 ...

  • 学生通讯录vb课程设计
  • 沈阳航空航天大学 课程设计任务书 学院:航空航天工程学部 专业:飞行器制造(航维) 班级:14030501 学号:[1**********]21 题目:学生通讯录管理 一.课程设计时间 2012~2013第2学期 第3周,共计1周,20学时. 二.课程设计内容 以VB+Access组合,实现同学通讯 ...

  • [测量程序设计]课程教学大纲格式
  • 测绘工程专业 课程教学大纲 [课程名称]测量程序设计 [课程编码]A [课程类别]专业必修课 [课 时]56学时 [学 分]3.0学分 [课程性质.目标和要求] 课程性质:<测绘程序设计>是测绘工程专业本科选修的一门的专业基础课, 是测绘与程序设计理论联系实际的重要环节,在培养学生严谨的 ...

  • 计算机导论教学大纲
  • <计算机文化基础>课程教学大纲 课程编号:030110020 课程名称:计算机导论 课程类型:基础课 总 学 时:60 讲课学时:30 实验学时:30 学 时:60 学 分:4 适用对象:计算机专业 先修课程: 一.课程性质.目的和任务 <计算机导论>是计算机专业学生必修的公 ...

  • 机械原理课程设计-书本打包机设计
  • 课程设计说明书 课程名称: 机械原理课程设计 设计题目: 书本打包机设计 专 业: 船机修造 班级:2班 学生姓名: 丁帅 学 号: 学生姓名: 郭哲睿 学 号: 指导教师: 毕 艳 丽 书本打包机设计 一.工作原理及工艺动作过程 书本打包机的用途是要把一摞书(如五本一包)用牛皮纸包成一包,并在两端 ...

  • 教学管理系统
  • 信息管理与决策支持系统论文 教学管理系统 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已经逐步成熟.管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相 适应的管理信息系统.教学管理系统是一个教育单 ...