vb.net极简版扫雷16*16,40雷源代码,仅供学习和参考

效果图:下载地址:链接:https://pan.baidu.com/s/14rrZujpQbfs-9HMw_lL-3Q?pwd=1234 
提取码:1234

源代码:只有120行

Imports System.Math
Public Class Form1Dim Booms As New List(Of Point)Dim MyBooms As New List(Of Point)Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.LoadFlow1.Height = Flow1.WidthFor i = 0 To 16 * 16 - 1Dim but As New Buttonbut.Name = "but" & ibut.Tag = New Point(i Mod 16, i \ 16)but.BackColor = Color.LightBluebut.Font = New Font(but.Font.FontFamily, 20, but.Font.Style)but.Location = New Point(but.Tag.X * 52, but.Tag.y * 52)but.Size = New Size(Flow1.Width / 16, Flow1.Height / 16)AddHandler but.Click, AddressOf But_ClickAddHandler but.MouseDown, AddressOf But_MouseDownAddHandler but.MouseUp, AddressOf But_MouseUpFlow1.Controls.Add(but)NextDim Line As New List(Of Integer)For i = 1 To 40
H:          Dim s = New Random().Next(0, 255)Threading.Thread.Sleep(1)s = Abs(New Random().Next(0, 24) - s)If Line.Contains(s) ThenGoTo HEnd IfLine.Add(Abs(s))NextFor i = 0 To 39Booms.Add(New Point(Line(i) Mod 16, Line(i) \ 16))NextEnd SubSub But_Click(sender As Object, e As EventArgs)If Booms.Contains(sender.tag) ThenIf sender.text <> "-1" ThenMsgBox("Boom!")End IfElseIf sender.text = "-1" ThenExit SubEnd Ifsender.text = 0sender.backcolor = Color.LightGrayDim P0 = sender.tagDim Round As New List(Of Point)With Round.Add(New Point(P0.x - 1, P0.y - 1)).Add(New Point(P0.x, P0.y - 1)).Add(New Point(P0.x + 1, P0.y - 1)).Add(New Point(P0.x - 1, P0.y)).Add(New Point(P0.x + 1, P0.y)).Add(New Point(P0.x - 1, P0.y + 1)).Add(New Point(P0.x, P0.y + 1)).Add(New Point(P0.x + 1, P0.y + 1))End WithFor Each boom In BoomsIf Round.Contains(boom) Thensender.text += 1End IfNextIf sender.text = 0 ThenFor Each but In Flow1.ControlsIf Round.Contains(but.tag) And but.text = "" Thenbut.PerformClickEnd IfNextEnd IfEnd IfEnd SubSub But_MouseDown(sender As Object, e As MouseEventArgs)If e.Button = MouseButtons.Right ThenIf sender.text = "-1" Thensender.text = ""sender.backcolor = Flow1.BackColorElseIf sender.text = "" Thensender.text = -1sender.backcolor = Color.RedElseDim P0 = sender.tagDim Pt = sender.textDim Round As New List(Of Point)With Round.Add(New Point(P0.x - 1, P0.y - 1)).Add(New Point(P0.x, P0.y - 1)).Add(New Point(P0.x + 1, P0.y - 1)).Add(New Point(P0.x - 1, P0.y)).Add(New Point(P0.x + 1, P0.y)).Add(New Point(P0.x - 1, P0.y + 1)).Add(New Point(P0.x, P0.y + 1)).Add(New Point(P0.x + 1, P0.y + 1))End WithDim BoomCount As IntegerFor Each but In Flow1.ControlsIf Round.Contains(but.tag) And but.text = "-1" ThenBoomCount += 1End IfNextIf Pt = BoomCount ThenFor Each but In Flow1.ControlsIf Round.Contains(but.tag) Thenbut.performclickEnd IfNextEnd IfEnd IfEnd IfEnd SubSub But_MouseUp(sender As Object, e As MouseEventArgs)Dim i As IntegerFor Each but In Flow1.ControlsIf but.text <> "" And but.text <> "-1" And Not Booms.Contains(but.tag) Theni += 1End IfNextIf i = 16 * 16 - 40 ThenMsgBox("你赢了!")End IfEnd Sub
End Class

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/678758.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Activiti7(流程引擎)简单笔记,附带作者执行的Demo代码文件

文章目录 一、Activiti7流程基础1、最简单的流程2、流程值表达式3、方法表达式4、节点监听器5、流程变量6、候选人7、候选人组8、流程网关排他网关并行网关包容网关事件网关 二、Activiti7流程事件1、定时器事件定时器开始事件定时器中间事件定时器边界事件 2、消息事件消息开始…

c#异步编程

1.创建任务的几种方法 public void TaskAsync1(){//异步编程Task task new Task(() >{//Thread.Sleep(1000);Console.WriteLine("Task 的使用");});task.Start();}public void TaskAsync2(){Task.Factory.StartNew(() > { Console.WriteLine("创建异步线…

【Java EE初阶十二】网络编程TCP/IP协议(一)

1. 网络编程 通过网络&#xff0c;让两个主机之间能够进行通信->就这样的通信来完成一定的功能&#xff0c;进行网络编程的时候&#xff0c;需要操作系统给咱们提供一组API&#xff0c;通过这些API来完成编程&#xff1b;API可以认为是应用层和传输层之间交互的路径&#xf…

多旋翼无人机飞行控制详解,四旋翼无人机飞控原理深入解析

在四旋翼无人机中&#xff0c;相邻的两个螺旋桨旋转方向是相反的。如图所示&#xff0c;三角形红箭头表示飞机的机头朝向&#xff0c;螺旋桨M1、M3的旋转方向为逆时针&#xff0c;螺旋桨M2、M4的旋转方向为顺时针。当飞行时&#xff0c;M2、M4所产生的逆时针反作用力&#xff0…

Java奠基】对象数组练习

目录 商品对象信息获取 商品对象信息输入 商品对象信息计算 商品对象信息统计 学生数据管理实现 商品对象信息获取 题目要求是这样的&#xff1a; 定义数组存储3个商品对象。 商品的属性&#xff1a;商品的id&#xff0c;名字&#xff0c;价格&#xff0c;库存。 创建三个…

双活工作关于nacos注册中心的数据迁移

最近在做一个双活的项目&#xff0c;在纠结一个注册中心是在双活机房都准备一个&#xff0c;那主机房的数据如果传过去呢&#xff0c;查了一些资料&#xff0c;最终在官网查到了一个NacosSync 的组件&#xff0c;主要用来做数据传输的&#xff0c;并且支持在线替换注册中心的&a…

python数据分析numpy基础之abs()用法和示例

1 python数据分析numpy基础之abs()用法和示例 python的通用函数ufunc (Universal functions)是一种对ndarray多维数组中的数据执行元素级运算的函数&#xff0c;即对数组的每个元素都调用通用函数。numpy的通用函数分为一元ufunc和二元ufunc。一元ufunc接收一个ndarray入参进行…

学生学习知识点总结作文试题练习题考试资讯网站源码

(购买本专栏可免费下载栏目内所有资源不受限制,持续发布中,需要注意的是,本专栏为批量下载专用,并无法保证某款源码或者插件绝对可用,介意不要购买) 资源简介 学生学习知识点总结作文试题练习题考试资讯网站源码+WAP手机版+采集优化版-整站打包 整站打包源码,简洁大…

多模态(二)--- CoCa原理与源码解读

1 CoCa简介 CoCa代表Contrastive Captioner 的缩写&#xff0c;代表模型用两个目标函数训练出来的&#xff0c;一个是Contrastive Loss&#xff0c;一个是Captioning Loss。 2 CoCa训练流程 利用ViT对image进行encoder编码获得图像特征token对图像特征进行attention pooling…

java回忆性记录5

java回忆性记录5 for循环 循环语句&#xff0c;属于重复结构中的流程控制语句&#xff0c;一旦条件符合就会执行循环&#xff0c;反之则不会。假如让计算机再屏幕打印500次我们不可能傻傻的把打印语句输出500次。依稀记得在没有学习循环语句的时候自己傻傻的ctrlc 、ctrlv了几…

第四篇:SQL语法-DDL-数据定义语言

大年初一限定篇&#x1f600; &#xff08;祝广大IT学习者、工作者0 error 0 warning&#xff01;&#xff09; 一&#xff0c;DDL数据库操作 &#xff08;一&#xff09;库的查询操作 1.列出所有已定义数据库 show databases; 2.查询当前所处数据库 select database(); &…

基于Linux的HTTP代理服务器搭建与配置实战

在数字化世界中&#xff0c;HTTP代理服务器扮演着至关重要的角色&#xff0c;它们能够帮助我们管理网络请求、提高访问速度&#xff0c;甚至在某些情况下还能保护我们的隐私。而Linux系统&#xff0c;凭借其强大的功能和灵活性&#xff0c;成为了搭建HTTP代理服务器的理想选择。…

【C语言——打印乘法口诀表】

乘法表&#xff1a; 我们可以定义一个i控制行的变化&#xff0c;外加看上图的表得知我们需要用到循环结构&#xff0c;i是行需要不停的加加&#xff0c;因此&#xff0c;for循环比较好用&#xff0c;可以用两个嵌套的循环&#xff0c;外层循环即用到的i表示的是每一行的打印&am…

【从Python基础到深度学习】4. Linux 常用命令

1.配置root用户密码 root用户为系统默认最高权限用户&#xff0c;其他用户密码修改命令与root用户修改密码命令相同 sudo passwd root 2.添加用户&#xff08;henry&#xff09; sudo useradd -m henry -s /bin/bash 3.配置henry用户密码 Xshell下连接新用户&#xff08;hen…

15.Swift闭包

Swift 闭包 在 Swift 中&#xff0c;闭包是一种自包含的函数代码块&#xff0c;可以在代码中被传递和使用。闭包可以捕获并存储其所在上下文中的任意变量和常量的引用&#xff0c;这就是所谓的闭包的特性。闭包在 Swift 中被广泛用于函数式编程和异步编程&#xff0c;具有灵活…

二级C语言笔试9

(总分89.5,考试时间90分钟) 一、选择题 1. 下列对队列的叙述正确的是 。 A) 队列属于非线性表 B) 队列按“先进后出”原则组织数据 C) 队列在队尾删除数据 D) 队列按“先进先出”原则组织数据 2. 下列关于栈的描述中错误的是( )。 A) 栈是先进后出的…

weilai8游戏爬虫

#!/usr/bin/python # -*- coding: UTF-8 -*- #!/usr/bin/python # -*- coding: UTF-8 -*- import os,csv import re import random import time import requests from lxml import etreefrom urllib.parse import quote, unquotepage=98 sess = requests.Session()#创建一个ses…

linux系统上tomcat简介以及安装tomcat

tomcat简介以及安装 Tomcat简介安装环境安装jdk安装tomcat浏览器访问 Tomcat简介 Tomcat是一个开源的Web服务器和servlet容器&#xff0c;由Apache软件基金会开发和维护。它是一种流行的Java Web应用服务器&#xff0c;用于运行Java编写的Web应用程序。 Tomcat提供了一个轻量级…

基于javaEE的ssm仓库管理系统

仓库管理系统的重中之重是进销存分析这一板块&#xff0c;在这一板块中&#xff0c;顾名思义能够查询到近期的进货记录&#xff0c;包括每日的进货单据&#xff0c;单品推移(即某一商品的库存变化)&#xff0c;方便我们核对库存差异。同时也需要查询到每日的销售数据&#xff0…

hexo部署到gitee(码云)

引言 Hexo 是一个基于Node.js的静态博客框架&#xff0c;而 Gitee&#xff08;也被称为码云&#xff09;是一个国内的代码托管平台&#xff0c;支持 Git 版本控制系统&#xff0c;与 GitHub 类似。将 Hexo 部署到 Gitee Pages 可以让你的博客受益于 Gitee 的国内服务器&#xf…