当前位置: 首页 > news >正文

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)

输入华氏温度,点击计算按钮,算出摄氏温度。

C=\frac{5}{9}\cdot \left ( F-32 \right )

拿之前的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

http://www.lryc.cn/news/489804.html

相关文章:

  • centos 服务器 docker 使用代理
  • python语言基础
  • Python中的Apriori库详解
  • MongoDB比较查询操作符中英对照表及实例详解
  • 掌上单片机实验室 – RT-Thread + ROS2 初探(25)
  • ‌Kotlin中的?.和!!主要区别
  • iframe嵌入踩坑记录
  • 面试小札:Java的类加载过程和类加载机制。
  • Spring 上下文对象
  • Wireshark抓取HTTPS流量技巧
  • 测试人员--如何区分前端BUG和后端BUG
  • 【Vue】指令扩充(指令修饰符、样式绑定)
  • Ubuntu20.04 Rk3588 交叉编译ffmpeg7.0
  • HTML常用表格与标签
  • 网络安全与加密
  • MySQL数据库-索引的介绍和使用
  • 【图像去噪】论文精读:Pre-Trained Image Processing Transformer(IPT)
  • Java SE 与 Java EE:基础与进阶的探索之旅
  • ssm旅游推荐系统的设计与开发
  • 【人工智能】用Python和NLP工具构建文本摘要模型:使用NLTK和spaCy进行自然语言处理
  • 51c大模型~合集76
  • 资源控制器--laravel进阶篇
  • 对象:是什么,使用,遍历对象,内置对象
  • 设计模式:4、命令模式(双重委托)
  • DataWorks快速入门
  • EasyExcel并行导出多个excel文件并压缩下载
  • 圣诞节秘诀
  • 亚信安全发布《2024年第三季度网络安全威胁报告》
  • Long noncoding RNAs and humandisease
  • 嵌入式AI之rknn yolov5初探