VB课程设计迷宫答案
走出迷宫课程设计报告(VB)
走出迷宫设计报告
学院 班级 学号 姓名 成绩 一、设计思路
1.要达到的目的
①能够打开已有的迷宫文件并进行游戏。 ②游戏者使用光标键移动目标 ③可对游戏者进行时间计时 ④移动目标只能在通道中移动 ⑤可以自定义使用移动键
2.关键问题的解决
⑴程序分为设计和游戏两种状态。
⑵可以自己设置迷宫路线图,设计时同时指定入口和出口(入口用S表示,出口用F表示,通道用#表示,墙用空格表示,全用半角字符)。
⑶被移动目标可以使用提供的图片,或者自行安排其他控件。 ⑷支持显示的背景设置,可以设置成任意色彩或者图案。 ⑸可以设置迷宫的大小。
二..程序流程图
三、部分程序关键源代码及注释
初始化设置. up = 0 down = 0 left5 = 0 right = 0
ScaleMode = vbPixels
1
GAMESTART模块 调用 调用 自定义设置 调用 退出 选择路线并开始游戏 调用 继续游戏 退出 走出迷宫课程设计报告(VB)
AutoRedraw = True Picplayer.Visible = False SQUARE_WID = 20 SQUARE_HGT = 20 bcolor = &HFF0000 自定义使用光标键 m = PlayerM n = PlayerN
If up <> 0 And down <> 0 And left5 <> 0 And right <> 0 Then Select Case KeyCode Case left5
n = PlayerN - 1 Case right
n = PlayerN + 1 Case down
m = PlayerM + 1 Case up
m = PlayerM - 1 Case Else Exit Sub End Select Else
Select Case KeyCode Case vbKeyLeft n = PlayerN - 1 Case vbKeyRight n = PlayerN + 1 Case vbKeyDown m = PlayerM + 1 Case vbKeyUp
m = PlayerM - 1 Case Else Exit Sub End Select End If
If LegalMove(m, n) Then PositionPlayer m, n 建立二维数组
On Error GoTo errhandler CommonDialog1.ShowOpen fnum = FreeFile
Open CommonDialog1.FileName For Input As #fnum Input #fnum, NumRows, NumCols
ReDim LegalMove(1 To NumRows, 1 To NumCols) For m = 1 To NumRows
Line Input #fnum, row_info For n = 1 To NumCols
2
走出迷宫课程设计报告(VB)
ch = Mid$(row_info, n, 1) LegalMove(m, n) = (ch <> \ If LCase$(ch) = \ ' 入口. PlayerM = m PlayerN = n
ElseIf LCase$(ch) = \ ' 出口. MFinish = m NFinish = n End If Next n Next m
Close #fnum
Width = ScaleX(SQUARE_WID * NumCols, ScaleMode, vbTwips) + _ Width - ScaleX(ScaleWidth, ScaleMode, vbTwips)
Height = ScaleY(SQUARE_HGT * NumRows, ScaleMode, vbTwips) + _ Height - ScaleY(ScaleHeight, ScaleMode, vbTwips) 开始画图. Cls
For m = 1 To NumRows For n = 1 To NumCols
If LegalMove(m, n) Then
If m = MFinish And n = NFinish Then clr = vbRed Else
clr = vbWhite End If Else
clr = bcolor End If
Line (n * SQUARE_WID, m * SQUARE_HGT)-Step(-SQUARE_WID, -SQUARE_HGT), clr, BF
Next n Next m
擦除小人的上一个位置.
If PlayerM > 0 Then
a = (PlayerN - 1) * SQUARE_WID + (SQUARE_WID - Picplayer.Width) / 2 b = (PlayerM - 1) * SQUARE_HGT + (SQUARE_HGT - Picplayer.Height) / 2 Line (a - 1, b - 1)-Step(Picplayer.Width, Picplayer.Height), vbWhite, BF End If
画出现在位置的小人.
a = (n - 1) * SQUARE_WID + (SQUARE_WID - Picplayer.Width) / 2 b = (m - 1) * SQUARE_HGT + (SQUARE_HGT - Picplayer.Height) / 2 PaintPicture Picplayer.Picture, a, b 检查是否到达终点.
3
走出迷宫课程设计报告(VB)
If m = MFinish And n = NFinish Then If MsgBox(\您用时\
Int(Timer - StartTime) & \秒.\ vbCrLf & \再玩一次?\esNo, _ \es _ Then
Form_Load Else
Unload Me
End If End If
从文件中读取数据建立一个二维数组 fnum = FreeFile ‘得到空文件号
Open SelectFile For Input As #fnum ‘打开文件并指定缓冲区的文件号
Input #fnum, NumRows, NumCols ‘读入数组的行(NumRows)和列(NumCols)值 ReDim LelMove(1 To NumRows, 1 To NumCols) ‘定义动态数组的大小 ch = Mid(row, c, 1) ‘row为读入的每行内容
LelMove(r, c) = (ch <> \‘判断ch <> \成立则为True,否则为False ScaleMode=vbPixels。窗口的属性
四、设计方案的完善及目前存在的问题
1.设计方案要完善的地方
1. 增加迷宫路线的复杂程度。
2. 自行设置移动键并可以随时调用。
2. 目前存在的问题
1.尚未达到:在设计模式能够通过鼠标直接绘制的方式设计迷宫,并能将所设计的布局保存到文本文件中,即设计时用鼠标左键开辟通道,CTRL+鼠标左键设置迷宫入口,CTRL+鼠标右键设置迷宫出口。 2.未完成对三维路线图的设置.
五、本次设计的收获及心得体会
选择这样一个题目,很多地方无从下手,很多知识课本上涉及的不是很多,经过多方查找资料,程序员指南和控件参考手册都成了必备的参考工具,把各部分需要用的程序相关代码罗列出来,然后进行整和,这道题对我来将挑战性是非常大的,但通过这次实习,我发现VB作为一种语言工具,能够设计出各种各样的程序,完成不同的功能,是很有用的,以后决心努力学习VB,学好VB。
六、对该题目和VB设计的意见和建议
1. 对该题目的意见和建议
可以运用控件知识,自行设置移动键。 可以尝试设置三维路线图。
可以适当添加背景音乐,增加趣味性。 可以适当添加程序,能够显示排名。 2.对本次设计的意见和建议
很想自己设计一套程序,这次设计给了我这次机会,为此,我在此次设计中积极准备、努力创新,虽然到最后创新部分没有做完,但是当我看到自己亲手设计的程序运行的时候,心里有一种收
相关推荐:
- [基础教育]2016-2022年中国钢芯铝绞线市场现状调
- [基础教育]语文部编版初一语文下册练习题 句式变
- [基础教育]南京继续教育参考答案--深入学习贯彻习
- [基础教育]国旗下讲话稿——珍惜时间好读书
- [基础教育]北师大版六年级数学下册圆锥的体积教学
- [基础教育]人教版-音乐-四年级下册-四年级下册音
- [基础教育]乔布斯2019年斯坦福大学毕业典礼致辞.d
- [基础教育]2015年加油站安全知识竞赛试题及答案
- [基础教育]2020年教师年度考核个人工作总结
- [基础教育]2019年中考历史试题-2019年大庆市初中
- [基础教育]初三仁爱英语第一轮总复习教案
- [基础教育]SG-A094电气配管安装工程隐蔽验收记录
- [基础教育]冀教版小学数学三年级下册第六单元教材
- [基础教育]青岛版(五制)小学科学二年级下册16《制
- [基础教育]2018-2019年初中科学初一中考真卷测试
- [基础教育]幼儿园大班期末简短评语精选
- [基础教育]2018云南临沧公务员考试申论技巧:这样
- [基础教育]学校食堂经营管理方案
- [基础教育]新中国砥砺奋进的七十年原文
- [基础教育]真空泵的选型及常用计算公式
- 高职田径课程教学现状与对策
- 全髋关节置换术在老年股骨颈骨折患者中
- 青人社厅函〔2016〕576号(附件)工资
- cp101-07砂子检验作业指导书 - secret
- 微观经济学 第八章 博弈论 习题
- 2014高考真题(词语运用)汇编及答案
- 2018年人教版七年级语文下册《第三单元
- 苏教版数学四年级上册第一单元试题 - M
- 四川大学新闻与传播考研2000-2010年真
- 浙江万里学院英语专业四年制本科教学计
- 最新2018马年事业祝福语-范文word版(2
- 最全模具行业术语英文翻译
- 皮亚杰的发展心理学理论
- 64篇高考情景式默写 练习题及答案
- 仿写(学生稿)
- 《SQL Server数据库技术》试卷A
- 第七章作业答案
- 江苏省赣榆县海头高级中学高中语文必修
- 浙江省2001年10月自考正常人体解剖学答
- 2012英语重点短语




