vb猜数字游戏课程设计报告Word文档格式.docx
《vb猜数字游戏课程设计报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《vb猜数字游戏课程设计报告Word文档格式.docx(13页珍藏版)》请在冰点文库上搜索。
设计思路
首先要创建三个窗口,form1是进入游戏界面,form2是游
戏运行界面,form3是游戏规则介绍。
1
其次要按要求实现三个窗口的show与hide在代码为
PrivateSubcommand*_click()
form*.show
Form*.hide
Endsub
在form3中我没有用这种方法,因为在form3中又关闭按钮,如果想之前一样的话,按关闭按钮就直接退出游戏了,而我想要实现是再次回到游戏进入界面,所以有用了一个方法代码为:
Privatesubform_unload(Cancleasinteger)
Form1.show
这样子就防止之前那种情况的发生了
下一步开始创建控件
现在form1中创建游戏进入界面,根据游戏需要应该创建3个command控件,和一个label控件
2
然后开始编写代码代码如下
PrivateSubCommand1_Click()
Form1.Hide
form2.Show
EndSub
PrivateSubCommand2_Click()
Form3.Show
PrivateSubCommand3_Click()
End
3
PrivateSubForm_Load()
Label1.BackStyle=0把label1的背景方式改为透明EndSub
当然也可以在form1的界面上加上自己喜欢的图片,需要在picture中加载
然后在form3中设计游戏规则界面
这个界面中我把最大化与最化省去了,然后把关闭按钮编写了一下在form3的属性栏中吧minbutton和maxbutton的属性改为false这
4
样子就不会有最大最小化按钮了剩下的就编写代码了PrivateSubForm_Load()
Label1.BackStyle=0
PrivateSubForm_unload(CancleAsInteger)
Form1.Show
也可以在form3界面中加载自己喜欢的图片
下面的也是这个程序中最重要的程序——游戏的编写首先应该创建控件
5
也就是说要创建4个command控件和4个text控件2个label控件然后开始编写代码
Dima1AsInteger,a2AsInteger,a3AsInteger,a4AsInteger
PubliccishuAsInteger
PrivateSubCommand1_Click()在点击开始按钮之后command是可见的,可使用的
Command2.Enabled=True
Command3.Enabled=TrueRandomize随机产生四个不同的数字
Label2.Caption=0&
"
A"
&
0&
B"
a1=Int(10*Rnd)
Do
a2=Int(10*Rnd)
6
LoopWhilea2=a1
a3=Int(10*Rnd)
LoopWhilea3=a1Ora3=a2
a4=Int(10*Rnd)
LoopWhilea4=a1Ora4=a2Ora4=a3
Label1.Caption="
已经随机产生了一个数字,0~9,不同的四位数,猜猜是什么数吧,"
PrivateSubCommand2_Click()重新开始游戏的设置
cishu=0
Text1.Text="
"
Text2.Text="
Text3.Text="
Text4.Text="
Randomize
7
PrivateSubCommand4_Click()
PrivateSubForm_Load()可以使command2和command3点击开始游戏按扭之前是灰色的不可用的
Command2.Enabled=False
8
Command3.Enabled=False
Label2.BackStyle=0EndSub
PrivateSubText1_Change()Text控件中焦点的设置
IfLen(Text1.Text)=1Then
Text2.SetFocus
EndIf
PrivateSubtext2_change()
IfLen(Text2.Text)=1Then
Text3.SetFocus
PrivateSubtext3_change()
IfLen(Text3.Text)=1Then
Text4.SetFocus
PrivateSubCommand3_Click()猜数字真确与否的代码
9
Dimtmp1AsInteger,tmp2AsInteger,tmp3AsInteger,
tmp4AsInteger
DimAAsInteger,BAsInteger
A=0
B=0
Ifcishu=9Then
MsgBox"
很遗憾,你已经猜了10次答案是"
a1&
a2&
a3&
a4,,"
猜数字"
ExitSub
tmp1=Val(Text1.Text)
tmp2=Val(Text2.Text)
tmp3=Val(Text3.Text)
tmp4=Val(Text4.Text)
Iftmp1=tmp2Ortmp1=tmp3Ortmp1=tmp4Then
输入的数字不能相同,请重新输入"
48,"
猜数
字游戏"
Iftmp2=tmp3Ortmp2=tmp4Ortmp2=tmp1Then
16,"
10
Iftmp3=tmp4Ortmp3=tmp2Ortmp3=tmp1Then
64,"
Iftmp4=tmp1Ortmp4=tmp2Ortmp4=tmp3Then
输入的数不能相同,请重新输入"
猜数字
游戏"
cishu=cishu+1
Iftmp1=a1Then
A=A+1
ElseIftmp1=a2Ortmp1=a3Ortmp1=a4Then
B=B+1
Iftmp2=a2Then
ElseIftmp2=a1Ortmp2=a3Orrmp2=a4Then
Iftmp3=a3Then
11
ElseIftmp3=a1Ortmp3=a2Ortmp3=a4Then
Iftmp4=a4Then
ElseIftmp4=a1Ortmp4=a2Ortmp4=a3Then
Label2.Caption=A&
B&
IfA=4Then
恭喜你,你猜对了,"
你一共猜了"
cishu&
次"
,"
猜数字游戏"
PrivateSubtext1_Click()设置鼠标点解text自动消除数字
PrivateSubtext2_Click()
PrivateSubtext3_Click()
12
PrivateSubtext4_Click()
另外需要设置text中数字的大小和输入长度,在font属性栏中设置数字的大小,在maxlength的属性栏中改为1,使在text控件中只能输入一个数字。
做完这些,剩下的就是修饰了,让这个自己做好的游戏看起来更好看一些,就需要在各个form界面上加载自己喜欢的图片,让界面更丰富一些,不至于太单调,一样的方法,需要在你想添加图片的form控件属性栏中找到picture属性然后加载自己喜欢的图片,需要的话再把不同位置的字体也设置一下,让字体不至于进入图片中找不到运行结果
进入界面form1
13
游戏规则form3
开始游戏界面form2
14
课程设计体会
实践能够检验是否收获。
通过本次课程设计我不仅对课本知
识加深了印象和了解,也明白了如何把理论知识运用到现实
15
中实践,同时也学到了许多有关vb的课外的知识比如在查阅资料过程中我学会了产生随机数的多种方法,一次性随机产生四位数,每次随机产生一个数组合成四位数,可定义动态数组也可定义几个变量去实现。
在定义计数变量时把它设为静态变量以及如何使指定的对象什么时候获得焦点等。
在完成课程设计过程中锻炼了我分析解决实际问题的能力。
开始时并不是很顺利对课本内的知识掌握的不太好,很多知识点被遗忘、不清楚,也暴露出了对vb操作环境的不熟悉,和对一些控件的不熟以及对一些事件属性不了解但通过这次课程设计大半部分出现的问题都得到了解决。
设计这款游戏让我更加了解了vb开发环境有用性和前景性更加培养了我对学习visualbasic程序设计的热情和信念。
16