文档详情

扫雷-程序设计报告扫雷-程序设计报告.doc

发布:2016-12-31约2.17万字共18页下载文档
文本预览下载声明
Visual Basic课程设计报告 名称:扫雷 难度:四星 设计人:田林 指导老师:张小兵 班级学号:1108260146 时间:2012.3 南京理工大学能源与动力工程学院 知识点:(1)控件数组;(2)绘图;(3)菜单;(4)文本文件的读写;(5)多模块设计;(6)资源文件的使用。 一、功能简介: 启动程序后,进入初始界面(form1),游戏共有3种预定义的难度级别,为初级(9行9列10个雷),中级(16行16列40个雷),高级(16行30列99个雷),还有“自定义”命令,可以自行定义雷区行数,列数和雷数; 雷区上面的小脸可以变化,显示微笑,惊讶,痛苦,胜利。在任何情况下单击小脸可以重新开始游戏; 鼠标左击排雷,右击插小旗,打问号; 方格 里面的数字表示方格周围的雷数; 扫雷成功时候,调用文件看有没有打破该级别的记录。 二、课程设计的详细设计 (1).绘制方格,使用如下程序: Dim picf As New StdPicture picf保存图片对象 form1.pic2.ScaleMode = 3 以像素为单位 form1.pic2.Cls 图片框清空 Set picf = LoadPicture(App.Path 1.bmp) For i = 0 To m - 1 For j = 0 To n - 1 form1.pic2.PaintPicture picf, j * 16, i * 16 加载图片 Next Next (2).放雷的方法:定义一个二维数组aarMine,行数为inthang,列数为intlie,雷的个数intlei,使用下面的程序来解决: Randomize ReDim arrMine(inthang, intlie) Do While int3 intlei 雷数的随机分布 col = Int(Rnd * intlie) ln = Int(Rnd * inthang) If arrMine(ln, col) = False Then arrMine(ln, col) = True int3 = int3 + 1 End If Loop (3).使用三个pictureclip控件来管理图片: form1.PictureClip1.Picture = LoadPicture(App.Path face.bmp) form1.PictureClip1.Rows = 1 form1.PictureClip1.Cols = 5 form1.PictureClip2.Picture = LoadPicture(App.Path number.bmp) form1.PictureClip2.Rows = 1 form1.PictureClip2.Cols = 12 form1.PictureClip3.Picture = LoadPicture(App.Path mine.bmp) form1.PictureClip3.Rows = 1 form1.PictureClip3.Cols = 15 (4).使用递归过程(fangkai)来开启方格: Private Sub fankai(ByVal int1 As Integer, ByVal int2 As Integer) Dim hang As Integer Dim lie As Integer Top: If int1 - 1 = 0 Then GoTo Below If Sign(int1 - 1, int2) = False Then Sign(int1 - 1, int2) = True hang = int1 - 1 lie = int2 GoTo Ddd End If Below:
显示全部
相似文档