VB.Net笔记-更新ing
目录
1.1 设置默认VS的开发环境为VB.NET(2024/11/18)
1.2 新建一个“Hello,world”的窗体(2024/11/18)
1.3 计算圆面积的小程序(2024/11/18)
显示/隐式 声明 (2024/11/18)
编辑
摄氏温度-华氏温度转换器(2024/11/18)
中奖查询(2024/11/18)
抽奖程序(2024/11/20)
求解二元一次方程(2024/11/20)
inputbox函数
Msgbox函数
msgbox语法
Msgbox的返回值
超链接LinkLable(2024/11/22)
1.1 设置默认VS的开发环境为VB.NET(2024/11/18)



-
1.2 新建一个“Hello,world”的窗体(2024/11/18)













两个窗体都做好以后,就可以在Form1里面的按钮上面添加代码了。


下面是GIF图,运行程序即可,点击按钮1即可弹出Form2的内容。
下面再添加一个隐藏窗体的按钮,先把按钮1的名字改成show,然后复制一下按钮1,名字改成hide,再复制一个,名字改成Exit,双击按钮2和3进入代码编辑器。



下面是GIF演示,没毛病。

1.3 计算圆面积的小程序(2024/11/18)
把1.1的Form1按钮随便改改,然后插入两个标签(Label),两个文本框(Textbox)。


为了不让面积结果被人为改变,要把Textbox2改成只读模式。

如果希望“计算”按钮来触发计算事件,那么就双击计算按钮,进入代码编写。


显示/隐式 声明 (2024/11/18)
熟悉VB的人肯定知道,通常在代码第一行会有,有这句话就表示使用的变量都要进行事先声明。
option explicit '默认这样就是打开
option explicit on '打开
option explicit off '关闭
如下图,这个是可以设置的,默认是打开的。
摄氏温度-华氏温度转换器(2024/11/18)
输入华氏温度,点击计算按钮,算出摄氏温度。
拿之前的Form1改改标签,双击计算按钮,改改代码即可,相当简单,single精度就够了。


中奖查询(2024/11/18)
功能:输入你想的三位数号码,点击查询按钮,假设中奖号码为123,
如果输入数字为123,则结果显示“恭喜你获得一等奖~” 。
如果输入数字前两位为12,则结果显示“恭喜你获得二等奖~” 。
如果输入数字前一位为,则结果显示“恭喜你获得三等奖~” 。
如果输入其他数字,则结果显示“很遗憾,你没有中奖~” 。

Public Class Form1Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickDim inp As Single, out As Stringinp = TextBox1.TextIf inp = "123" Thenout = "恭喜你获得1等奖~"ElseIf inp Like "12?" Thenout = "恭喜你获得2等奖~"ElseIf inp Like "1??" Thenout = "恭喜你获得3等奖~"Elseout = "很遗憾,你没有中奖~~"End IfTextBox2.Text = outEnd Sub

抽奖程序(2024/11/20)
功能:点击抽奖按钮,逐渐显示随机数字,一个三位数。
方法:用两个for 循环即可,外层for实现3个数,内层for实现逐渐显示的延时。

Dim i As Integer, j As IntegerDim PrizeNo As String, a As StringPrizeNo = ""For i = 1 To 3Randomize() '初始化随机数种子a = Int(Rnd() * 10) '产生0~9的随机数PrizeNo = PrizeNo & aFor j = 1 To 1000000000 '这里的循环是用来慢慢显现出数字Next jTextBox1.Text = PrizeNoTextBox1.Refresh() '刷新文本框Next i
下面是演示GIF

其中延时功能也可以采用sleep来实现,可以把上面j的for循环改成以下代码。
Thread.Sleep(2000) '这里休眠2000ms实现慢慢显现出数字
求解二元一次方程(2024/11/20)

UI大概可以做成下面这样。

在计算按钮里面添加如下的代码即可,对应的Textbox框的名字和代码对应即可。
Imports System.Windows.Forms.VisualStyles.VisualStyleElementPublic Class Form1Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click' 从文本框中获取系数Dim a As Double = Double.Parse(TextBoxA.Text)Dim b As Double = Double.Parse(TextBoxB.Text)Dim c As Double = Double.Parse(TextBoxC.Text)'首先判断a是否为0If a = 0 ThenDim root1 As Double = -c / bTextBoxResult1.Text = "Root: " & root1.ToString()TextBoxResult1.Text = "Root: " & root1.ToString()Else' 计算判别式Dim discriminant As Double = b * b - 4 * a * c' 根据判别式的值计算根If discriminant > 0 ThenDim root1 As Double = (-b + Math.Sqrt(discriminant)) / (2 * a)Dim root2 As Double = (-b - Math.Sqrt(discriminant)) / (2 * a)TextBoxResult1.Text = root1TextBoxResult2.Text = root2ElseIf discriminant = 0 ThenDim root As Double = -b / (2 * a)TextBoxResult1.Text = "Root: " & root.ToString()TextBoxResult1.Text = "Root: " & root.ToString()ElseTextBoxResult1.Text = "No real roots"TextBoxResult2.Text = "No real roots"End IfEnd IfEnd SubEnd Class
inputbox函数
前面的代码基本都是在textbox框里面输入数值,然后点击计算然后进行计算。有的时候需要弹出窗口让别人来输入一些数值,总之就是一种人机交互吧。
如果想实现以下功能,在窗体里有一个按钮,点击了以后会跳出一个输入框,你输入了内容以后,该内容就保存到了窗体的某个Textbox里面了。

Public Class Form1Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.ClickDim FileName As StringFileName = InputBox("Please Input anything", "Title", "...")If FileName <> "" ThenTextBoxA.Text = FileNameElseTextBoxA.Text = ""End IfEnd Sub
End Class

Msgbox函数
在前面一个例子上面添加一个退出按钮,当点击Exit的时候会弹出一个对话框确认是否退出,以免误操作导致程序退出。
在exit这个按钮里面添加代码即可。

msgbox语法
msgbox("消息文本",“按钮和图标形式”,“标题栏”)
这里面值得一提是按钮和图标形式,你可以采用写英文或者用数字来表示,数字又可以做一些排列组合,你可以理解成由两部分构成:
第一部分

第二部分

比如说你需要一个弹窗显示两个按钮,“确定”和“取消”,那么数值就是1,图标的话,如果想要一个询问的图标,就是32,加起来的和就是33,那么我的代码就如下。
msgbox("消息文本",33,“标题栏”)
Msgbox的返回值
如果点击OK,返回值就是1,所以需要定义一个变量,然后令它等于msgbox。
再进行操作。
返回值具体可以百度。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickDim Result As IntegerResult = MsgBox("你确定要退出吗?", 33, "退出")If Result = 1 ThenEndEnd IfEnd Sub

超链接LinkLable(2024/11/22)
在form里面插入linklabel以后,怎么样都打不开超链接,一直提示以下的错误
System.ComponentModel.Win32Exception:“An error occurred trying to start process 'Kimi.ai with working directory 'C:\Users\HUAWEI\source\repos\SolvingAQuadraticEquationWithOneVariable\SolvingAQuadraticEquationWithOneVariable\bin\Debug\net8.0-windows'. 系统找不到指定的文件。”
引发的异常:“System.ComponentModel.Win32Exception”(位于 System.Diagnostics.Process.dll 中)
找了半天都没找到解决办法,感觉应该是电脑不知道用什么浏览器打开网站。
最后指定谷歌浏览器的路径,成功解决。(耗时1小时)
Private Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked' 通过指定浏览器打开 URL,例如 Google ChromeDim browserPath As String = "C:\Users\HUAWEI\AppData\Local\Google\Chrome\Application\chrome.exe"
'这里的路径是我的,需要换成你自己的System.Diagnostics.Process.Start(browserPath, "https://www.baidu.com")End Sub
登录界面

这里的按钮里面插入的图标是怎么做到呢?
1-先插入一个imagelist控件。
2-点击images后面的三个点。

3.添加几张图片,右边的size里面可以调整图标的尺寸,默认尺寸很小。

4-点击按钮,在Imagelist里面选imagelist1,然后在imagekey里面选个图片。

5-成品如下。

6-双击登录按钮,进入代码界面,输入你想预制的密码即可。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickDim acc = TextBox1.TextDim psw = TextBox2.TextIf acc = "hans" And psw = "123" ThenMsgBox("欢迎进入MyWorld~", 1, "Hello")Form2.Show()ElseMsgBox("非法黑客侵入!!!", 1, "FBI WARNING")End IfEnd Sub
End Class
单选框(radio button)和多选框 (checkbox)

Public Class Form2Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChangedTextBox1.Text = ""If CheckBox1.CheckState = CheckState.Checked ThenTextBox1.Text = CheckBox1.TextEnd IfIf CheckBox2.CheckState = CheckState.Checked ThenTextBox1.Text = TextBox1.Text & " " & CheckBox2.TextEnd IfEnd SubPrivate Sub CheckBox2_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox2.CheckedChangedTextBox1.Text = ""If CheckBox1.CheckState = CheckState.Checked ThenTextBox1.Text = CheckBox1.TextEnd IfIf CheckBox2.CheckState = CheckState.Checked ThenTextBox1.Text = TextBox1.Text & " " & CheckBox2.TextEnd IfEnd Sub
End Class
相关文章:
VB.Net笔记-更新ing
目录 1.1 设置默认VS的开发环境为VB.NET(2024/11/18) 1.2 新建一个“Hello,world”的窗体(2024/11/18) 1.3 计算圆面积的小程序(2024/11/18) 显示/隐式 声明 (2024/11/18&…...
centos 服务器 docker 使用代理
宿主机使用代理 在宿主机的全局配置文件中添加代理信息 vim /etc/profile export http_proxyhttp://127.0.0.1:7897 export https_proxyhttp://127.0.0.1:7897 export no_proxy"localhost,127.0.0.1,::1,172.171.0.0" docker 命令使用代理 例如我想在使用使用 do…...
python语言基础
1. 基础语法 Q: Python 中的变量与数据类型有哪些? A: Python 支持多种数据类型,包括数字(整数 int、浮点数 float、复数 complex)、字符串 str、列表 list、元组 tuple、字典 dict 和集合 set。每种数据类型都有其特定的用途和…...
Python中的Apriori库详解
文章目录 Python中的Apriori库详解一、引言二、Apriori算法原理与Python实现1、Apriori算法原理2、Python实现1.1、数据准备1.2、转换数据1.3、计算频繁项集1.4、提取关联规则 三、案例分析1、导入必要的库2、准备数据集3、数据预处理4、应用Apriori算法5、生成关联规则6、打印…...
MongoDB比较查询操作符中英对照表及实例详解
mongodb比较查询操作符中英表格一览表 NameDescription功能$eqMatches values that are equal to a specified value.匹配值等于指定值。$gtMatches values that are greater than a specified value.匹配值大于指定值。$gteMatches values that are greater than or equal to…...
掌上单片机实验室 – RT-Thread + ROS2 初探(25)
在初步尝试RT-Thread之后,一直在琢磨如何进一步感受它的优点,因为前面只是用了它的内核,感觉和FreeRTOS、uCOS等RTOS差别不大,至于它们性能、可靠性上的差异,在这种学习性的程序中,很难有所察觉。 RT-Threa…...
Kotlin中的?.和!!主要区别
目录 1、?.和!!介绍 2、使用场景和最佳实践 3、代码示例和解释 1、?.和!!介绍 Kotlin中的?.和!!主要区别在于它们对空指针的处理方式。 ?.(安全调用操作符):当变量可能为null时,使用?.可以安全地调用其方法或属性…...
iframe嵌入踩坑记录
iframe嵌入父子页面token问题 背景介绍 最近在做在平台A中嵌入平台B某个页面的需求,我负责的是平台B这边,使这个页面被嵌入后能正常使用。两个平台都实现了单点登录。 其实这是第二次做这个功能了,原本以为会很顺利,但没想到折腾…...
面试小札:Java的类加载过程和类加载机制。
Java类加载过程 加载(Loading) 这是类加载过程的第一个阶段。在这个阶段,Java虚拟机(JVM)主要完成三件事: 通过类的全限定名来获取定义此类的二进制字节流。这可以从多种来源获取,如本地文件系…...
Spring 上下文对象
1. Spring 上下文对象概述 Spring 上下文对象(ApplicationContext)是 Spring 框架的核心接口之一,它扩展了 BeanFactory 接口,提供了更多企业级应用所需的功能。ApplicationContext 不仅可以管理 Bean 的生命周期和配置࿰…...
Wireshark抓取HTTPS流量技巧
一、工具准备 首先安装wireshark工具,官方链接:Wireshark Go Deep 二、环境变量配置 TLS 加密的核心是会话密钥。这些密钥由客户端和服务器协商生成,用于对通信流量进行对称加密。如果能通过 SSL/TLS 日志文件(例如包含密钥的…...
测试人员--如何区分前端BUG和后端BUG
在软件测试中,发现一个BUG并不算难,但准确定位它的来源却常常让测试人员头疼。是前端页面的问题?还是后台服务的异常?如果搞错了方向,开发人员之间的沟通效率会大大降低,甚至导致问题久拖不决。 那么&#…...
【Vue】指令扩充(指令修饰符、样式绑定)
目录 指令修饰符 按键修饰符 事件修饰符 双向绑定指令修饰符 输入框 表单域 下拉框 单选按钮 复选框 样式绑定 分类 绑定class 绑定style tab页切换示例 指令修饰符 作用 借助指令修饰符,可以让指令的功能更强大 分类 按键修饰符:用来…...
Ubuntu20.04 Rk3588 交叉编译ffmpeg7.0
firefly 公司出的rk3588的设备,其中已经安装了gcc 交叉编译工具,系统版本是Ubuntu20.04。 使用Ubuntu20.04 交叉编译ffmpeg_ubuntu下配置ffmpeg交叉编译器为arm-linux-gnueabihf-gcc-CSDN博客文章浏览阅读541次。ubuntu20.04 交叉编译ffmpeg_ubuntu下配…...
HTML常用表格与标签
一、table表格标签: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <body> <!--有大小为1的边框--> <table border"1">…...
网络安全与加密
1.Base64简单说明描述:Base64可以成为密码学的基石,非常重要。特点:可以将任意的二进制数据进行Base64编码结果:所有的数据都能被编码为并只用65个字符就能表示的文本文件。65字符:A~Z a~z 0~9 / 对文件进行base64编码…...
MySQL数据库-索引的介绍和使用
目录 MySQL数据库-索引1.索引介绍2.索引分类3.创建索引3.1 唯一索引3.2 普通索引3.3 组合索引3.4 全文索引 4.索引使用5.查看索引6.删除索引7.索引总结7.1 优点7.2 缺点7.3 索引使用注意事项 MySQL数据库-索引 数据库是用来存储数据,在互联网应用中,数据…...
【图像去噪】论文精读:Pre-Trained Image Processing Transformer(IPT)
请先看【专栏介绍文章】:【图像去噪(Image Denoising)】关于【图像去噪】专栏的相关说明,包含适配人群、专栏简介、专栏亮点、阅读方法、定价理由、品质承诺、关于更新、去噪概述、文章目录、资料汇总、问题汇总(更新中) 文章目录 前言Abstract1. Introduction2. Related…...
Java SE 与 Java EE:基础与进阶的探索之旅
在编程世界中,Java语言以其跨平台、面向对象、丰富的类库等特点,成为了众多开发者和企业的首选编程语言。而Java SE与Java EE,作为Java平台的两个重要组成部分,各自承载着不同的使命,同时又紧密相连,共同构…...
ssm旅游推荐系统的设计与开发
摘 要 旅游推荐系统是一个综合性的在线旅游推荐平台,旨在为用户提供便捷的旅游规划和预定服务。通过该系统,用户能够浏览各类景点信息并进行分类查找,同时获取详尽的景点介绍和相关照片,以辅助做出旅行决策。系统提供在线门票订购…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
android RelativeLayout布局
<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...
沙箱虚拟化技术虚拟机容器之间的关系详解
问题 沙箱、虚拟化、容器三者分开一一介绍的话我知道他们各自都是什么东西,但是如果把三者放在一起,它们之间到底什么关系?又有什么联系呢?我不是很明白!!! 就比如说: 沙箱&#…...
Python的__call__ 方法
在 Python 中,__call__ 是一个特殊的魔术方法(magic method),它允许一个类的实例像函数一样被调用。当你在一个对象后面加上 () 并执行时(例如 obj()),Python 会自动调用该对象的 __call__ 方法…...
Python网页自动化测试,DrissonPage库入门说明文档
🛰️ 基本逻辑 操作浏览器的基本逻辑如下: 创建浏览器对象,用于启动或接管浏览器获取一个 Tab 对象使用 Tab 对象访问网址使用 Tab 对象获取标签页内需要的元素对象使用元素对象进行交互 除此以外,还能执行更为复杂的操作&am…...

