赛马游戏VB课设报告.docx

上传人:b****8 文档编号:10796495 上传时间:2023-02-23 格式:DOCX 页数:23 大小:1.07MB
下载 相关 举报
赛马游戏VB课设报告.docx_第1页
第1页 / 共23页
赛马游戏VB课设报告.docx_第2页
第2页 / 共23页
赛马游戏VB课设报告.docx_第3页
第3页 / 共23页
赛马游戏VB课设报告.docx_第4页
第4页 / 共23页
赛马游戏VB课设报告.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

赛马游戏VB课设报告.docx

《赛马游戏VB课设报告.docx》由会员分享,可在线阅读,更多相关《赛马游戏VB课设报告.docx(23页珍藏版)》请在冰豆网上搜索。

赛马游戏VB课设报告.docx

赛马游戏VB课设报告

沈阳航空航天大学

课程设计

学号_2013040601458_

班级_34060110_____

姓名周兴义______

指导教师_杨煦_____

2014年10月24日

沈阳航空航天大学

课程设计任务书

学院:

机电工程学院专业:

机械设计制造及其自动化班级:

34060110

学号:

2013040601458题目:

“赛马”游戏

一、课程设计时间

2014~15第1学期第8周,共计1周,20学时。

二、课程设计内容

用VB编写一个简单的“赛马”小游戏,运行程序后,先选择相应的赛马进行投注,然后单击“开始”菜单,开始赛马。

当有一只赛马先跑到终点时,则比赛结束,并提示用户输赢结果。

程序界面可参考右图,用户也可在实现功能要求的前提下自行设计操作界面,参考界面中用到的相关图片由教师提供。

三、课程设计要求

程序质量:

✧贯彻事件驱动的程序设计思想。

✧用户界面友好,功能明确,操作方便;可以增加其它功能或修饰。

✧代码应适当缩进,并给出必要的注释,以增强程序的可读性。

课程设计说明书:

✧课设结束后,上交课程设计说明书和源程序。

课程设计说明书的内容参见提供的模板。

四、指导教师和学生签字

指导教师:

________学生签名:

________

五、成绩

六、教师评语

目录

需求分析4

设计分析4

技术要点5

主要界面截图6

总结7

完整的源程序8

参考文献9

需求分析

赛马游戏需求:

此游戏实质上是按照以前的赌马游戏编写而得,现在有了这个赛马的小游戏可以让玩家体验到赌马游戏的玩法与乐趣,此游戏纯属娱乐,放松心情。

设计分析

(1)概述:

对于“赛马”游戏的设计主要运用到了对command,label,form,timer,image等控件的属性的使用;对数组的运用;以及对case语句,循环语句随机数等程序的灵活使用。

我的软件主要做到了对“比赛”中的每一匹马赢的概率都是随机的,也就相当于概率相等的。

(2)总体设计:

 

(3)详细设计:

技术要点

赛马游戏中最重要的部份首先就是:

1.“赛马”时的马匹的动作要时刻在变幻,这样才让人感觉到赛马在奔跑。

 

2.“赛马”时的马匹奔跑的速度要是随机的,要做到每一匹马都是公平的。

(这就主要运用到了vb是上随机数的产生)

1关于数据库的连接

2SQL语句的应用

略。

(等等)

 

主要界面截图

图片部分。

以图片来展示程序的运行情况。

程序主界面必须有,然后是一些关键功能的界面。

每张图片应标注编号和主题。

图1.所用到的控件

图2.主界面

 

图3.选马下注

 

图4.下注金额

 

图5.游戏规则

 

图6.比赛中

 

图7.比赛结束以及名次单

 

总结

经过大一下一学期的vb学习,对vb有了初步的了解后,如今在大二为期一周的vb课设中,通过自己的不断努力,自己不仅对vb熟练了许多,而且在这次课设中,最终在完成老师的任务的同时自己还学到了不少以前从未接触到的知识。

完整的源程序

DimjineAsInteger,beilvAsInteger

Dimorder(0To3)AsInteger,mingciAsInteger,mAsInteger,xiazhuAsInteger

Dimv1AsInteger,v2AsInteger,v3AsInteger,v4AsInteger

Dimn1AsInteger,n2AsInteger,n3AsInteger,n4AsInteger

PrivateSubform_load()

Form1.Height=8400

Form1.Width=15360

Image1.Top=0

Image1.Left=0

Image2.Height=180*4

Image2.Width=195*4

Image2.Top=3700

Image2.Left=2000

Image3.Height=180*4

Image3.Width=195*4

Image3.Top=4700

Image3.Left=2000

Image4.Height=180*4

Image4.Width=195*4

Image4.Top=5700

Image4.Left=2000

Image5.Height=180*4

Image5.Width=195*4

Image5.Top=6700

Image5.Left=2000

Forn=0To3

Option1(n).Left=800

Option1(n).Top=3700+n*1000

Option1(n).Height=180*4

Option1(n).Width=250*4

Option1(n).Caption=n+1&"号马"

Nextn

Forn=0To3

Option1(n).BackColor=vbGreen

Nextn

Label1.Width=80

Label1.Height=5000

Label1.BackColor=vbWhite

Label1.Caption=""

Label1.Left=14000

Label1.Top=3480

 

Image1.Picture=LoadPicture("E:

\vb课设\周兴义.bmp")

Image2.Picture=LoadPicture("E:

\vb课设\1

(1).jpg")

Image3.Picture=LoadPicture("E:

\vb课设\2

(1).jpg")

Image4.Picture=LoadPicture("E:

\vb课设\3

(1).jpg")

Image5.Picture=LoadPicture("E:

\vb课设\4

(1).jpg")

 

Frame1.Caption=""

Frame1.Left=6180

Frame1.Height=4000

Frame1.Width=3000

Frame1.Top=-5000

Label2.Caption="第一名"

Label3.Caption="第二名"

Label4.Caption="第三名"

Label5.Caption="第四名"

 

Forn=0To5

Label11(n).Top=100

Label11(n).Left=100+n*1200

Label11(n).Width=1000

Label11(n).Height=500

Label11(n).FontSize=11

Label11(n).Caption=""

Nextn

beilv=Int(Rnd*9+1)

Label11(0).Caption="下注马号"

Label11

(2).Caption="下注金额"

Label11(4).Caption="倍率"

Label11(5).Caption=beilv

Command3.Caption="继续游戏"

 

EndSub

PrivateSubmoney_Click()

jine=Val(InputBox("请下注","下注金额"))

Label11(3).Caption=jine

EndSub

PrivateSubmusic_Click()

WindowsMediaPlayer1.URL="Queen-WeWillRockYou.mp3"

EndSub

PrivateSubrule_Click()

Shell"c:

\windows\system32\notepad.exe"+""+"游戏说明.txt",1

EndSub

PrivateSubstart_Click()

Ifxiazhu=0Then

MsgBox"请下注",0,"提示"

EndIf

Ifjine=0Then

MsgBox"请输入下注金额",0,"提示"

EndIf

Ifxiazhu<>0Andjine>0Then

Timer1.Enabled=True

ma1donghua.Enabled=True

ma2donghua.Enabled=True

ma3donghua.Enabled=True

ma4donghua.Enabled=True

EndIf

Randomize

Label11

(1).Caption=xiazhu

Label11(3).Caption=jine

EndSub

PrivateSubend_Click()

likai=MsgBox("你真的要离开游戏?

",4+32)

Iflikai=6Then

End

EndIf

 

EndSub

PrivateSuboption1_Click(IndexAsInteger)

SelectCaseIndex

Case0

xiazhu=1

Case1

xiazhu=2

Case2

xiazhu=3

Case3

xiazhu=4

EndSelect

Label11

(1).Caption=xiazhu

 

EndSub

 

PrivateSubma1donghua_Timer()

Ifn1=0Then

Image2.Picture=LoadPicture("E:

\vb课设\1

(1).jpg")

n1=1

ElseIfn1=1Then

Image2.Picture=LoadPicture("E:

\vb课设\1

(2).jpg")

n1=2

ElseIfn1=2Then

Image2.Picture=LoadPicture("E:

\vb课设\1(3).jpg")

n1=0

EndIf

 

EndSub

PrivateSubma2donghua_Timer()

Ifn2=0Then

Image3.Picture=LoadPicture("E:

\vb课设\2

(1).jpg")

n2=1

ElseIfn2=1Then

Image3.Picture=LoadPicture("E:

\vb课设\2

(2).jpg")

n2=2

ElseIfn2=2Then

Image3.Picture=LoadPicture("E:

\vb课设\2(3).jpg")

n2=0

EndIf

EndSub

PrivateSubma3donghua_Timer()

Ifn3=0Then

Image4.Picture=LoadPicture("E:

\vb课设\3

(1).jpg")

n3=1

ElseIfn3=1Then

Image4.Picture=LoadPicture("E:

\vb课设\3

(2).jpg")

n3=2

ElseIfn3=2Then

Image4.Picture=LoadPicture("E:

\vb课设\3(3).jpg")

n3=0

EndIf

EndSub

PrivateSubma4donghua_Timer()

Ifn4=0Then

Image5.Picture=LoadPicture("E:

\vb课设\4

(1).jpg")

n4=1

ElseIfn4=1Then

Image5.Picture=LoadPicture("E:

\vb课设\4

(2).jpg")

n4=2

ElseIfn4=2Then

Image5.Picture=LoadPicture("E:

\vb课设\4(3).jpg")

n4=0

EndIf

EndSub

 

PrivateSubCommand3_Click()

Image2.Height=180*4

Image2.Width=195*4

Image2.Top=3700

Image2.Left=2000

Image3.Height=180*4

Image3.Width=195*4

Image3.Top=4700

Image3.Left=2000

Image4.Height=180*4

Image4.Width=195*4

Image4.Top=5700

Image4.Left=2000

Image5.Height=180*4

Image5.Width=195*4

Image5.Top=6700

Image5.Left=2000

Frame1.Caption=""

Frame1.Left=6180

Frame1.Height=4000

Frame1.Width=3000

Frame1.Top=-5000

xiazhu=0

jine=0

beilv=Int(Rnd*9+1)

Label11(5).Caption=beilv

Forn=0To3

order(n)=0

Nextn

mingci=0

Label11

(1).Caption=""

Label11(3).Caption=""

 

EndSub

 

PrivateSubchengjidan_Timer()

Form=0To3

SelectCaseorder(m)

Case1

Label6.Caption=(m+1)&"号"

Ifxiazhu=m+1Then

Label10.Caption="你赢了"

Label12.Caption=jine*beilv&"元"

Else

Label10.Caption="你输了"

Label12.Caption=jine&"元"

EndIf

Case2

Label7.Caption=(m+1)&"号"

Case3

Label8.Caption=(m+1)&"号"

Case4

Label9.Caption=(m+1)&"号"

EndSelect

Nextm

Frame1.Top=Frame1.Top+20

Command3.Enabled=False

IfFrame1.Top>=1000Then

Command3.Enabled=True

chengjidan.Enabled=False

EndIf

 

EndSub

PrivateSubTimer1_Timer()

Randomize

v1=Int(Rnd*50+10)

Image2.Left=Image2.Left+v1

ma1donghua.Interval=v1*2

Randomize

v2=Int(Rnd*50+10)

Image3.Left=Image3.Left+v2

ma2donghua.Interval=v1*2

Randomize

v3=Int(Rnd*50+10)

Image4.Left=Image4.Left+v3

ma3donghua.Interval=v1*2

Randomize

v4=Int(Rnd*50+10)

Image5.Left=Image5.Left+v4

ma4donghua.Interval=v1*2

Iforder(0)=0Then

IfImage2.Left>=13220Then

mingci=mingci+1

order(0)=mingci

Ifmingci=4Then

ma1donghua.Enabled=False

ma2donghua.Enabled=False

ma3donghua.Enabled=False

ma4donghua.Enabled=False

Timer1.Enabled=False

chengjidan.Enabled=True

EndIf

EndIf

EndIf

Iforder

(1)=0Then

IfImage3.Left>=13220Then

mingci=mingci+1

order

(1)=mingci

Ifmingci=4Then

ma1donghua.Enabled=False

ma2donghua.Enabled=False

ma3donghua.Enabled=False

ma4donghua.Enabled=False

Timer1.Enabled=False

chengjidan.Enabled=True

EndIf

EndIf

EndIf

Iforder

(2)=0Then

IfImage4.Left>=13220Then

mingci=mingci+1

order

(2)=mingci

Ifmingci=4Then

ma1donghua.Enabled=False

ma2donghua.Enabled=False

ma3donghua.Enabled=False

ma4donghua.Enabled=False

Timer1.Enabled=False

chengjidan.Enabled=True'成绩单的显示

EndIf

EndIf

EndIf

Iforder(3)=0Then

IfImage5.Left>=13220Then

mingci=mingci+1

order(3)=mingci

Ifmingci=4Then

ma1donghua.Enabled=False

ma2donghua.Enabled=False

ma3donghua.Enabled=False

ma4donghua.Enabled=False

Timer1.Enabled=False

chengjidan.Enabled=True

EndIf

EndIf

EndIf

EndSub

参考文献

[1]刘瑞新.《VisualBasic程序设计教程》.北京:

机械工业出版社,2003

(等等)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1