📄 form1.vb
字号:
Imports System.Text
Imports System.Net
Imports System.Net.Sockets
Imports System.Threading
Imports System.Windows.Forms
Public Class Form1
#Region "学习messagebox类"
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = "" Then
MessageBox.Show("You must enter a name.", "Name Entry Error", MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Exclamation)
End If
End Sub
#End Region
#Region "学习listbox类"
Private sum As Decimal
Dim temp1, temp2 As String
Dim price As Decimal
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
temp1 = ListBox1.SelectedItem
temp2 = temp1.Substring(5)
price = Conversion.Val(temp2)
If sum + price <= Conversion.Val(TextBox2.Text) Then
sum += price
ListBox2.Items.Add(temp1)
TextBox3.Text = sum.ToString
TextBox4.Text = (Conversion.Val(TextBox2.Text) - sum).ToString
Else
MessageBox.Show("你的资金不够", "提示")
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
temp1 = ListBox2.SelectedItem
temp2 = temp1.Substring(5)
price = Conversion.Val(temp2)
sum -= price
TextBox3.Text = sum
TextBox4.Text = Conversion.Val(TextBox2.Text) - sum
ListBox2.Items.Remove(ListBox2.SelectedItem)
End Sub
#End Region
#Region "乘法口诀"
Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button14.Click
If TextBox1.Text = "" Then
MessageBox.Show("You must enter a name.", "Name Entry Error", MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Exclamation)
End If
Dim i, j As Integer
Try
For i = 1 To 9
For j = 1 To 9
TextBox1.AppendText(Str(j) + "*" + Str(i) + "=" + Str(i * j))
If i * j > 9 Then
TextBox1.AppendText(Space(1))
Else
TextBox1.AppendText(Space(2))
End If
Next j
TextBox1.AppendText(vbLf)
Next i
Catch ex As Exception
End Try
' Dim s As String = "71151280 gd 25.5 5 3 no"
' Dim c() As String
' c = s.Split(" ")Public Function Split(ByVal ParamArray separator() As Char) As String()
'成员属于: System.String()
'摘要:
'返回包含此实例中的子字符串(由指定 System.Char 数组的元素分隔)的 System.String 数组。
'参数:
'separator: 分隔此实例中子字符串的 Unicode 字符数组、不包含分隔符的空数组或null。
'返回值:
'一个数组,其元素包含此实例中的子字符串,这些子字符串由 separator 中的一个或多个字符分隔。有关更多信息,请参见备注部分。
End Sub
#End Region
#Region "数组转置"
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
Dim t1 As String = Nothing
Dim t2 As String = Nothing
Dim a, b As Integer
Dim arr(3, 4), tarr(4, 3) As Integer
For a = 0 To 3
For b = 0 To 4
arr(a, b) = a + b
t1 = t1 + Str(arr(a, b))
Next b
t1 = t1 + vbCr
Next a
For a = 0 To 4
For b = 0 To 3
tarr(a, b) = arr(b, a)
t2 += Str(tarr(a, b))
Next b
t2 += vbCr
Next a
MessageBox.Show(t1 + " " + vbCr + t2)
End Sub
#End Region
#Region "查询数据"
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
Dim a(5, 5) As Integer
Dim i1, j1, k, flag As Integer
Label1.Text = "数组为:" & vbNewLine
For i1 = 1 To 5
For j1 = 1 To 5
a(i1, j1) = Int(Rnd() * 10) + 5
Label1.Text &= " " & a(i1, j1)
Next j1
Label1.Text &= vbNewLine
Next i1
flag = 0
For Each k In a
If k = Convert.ToInt32(TextBox5.Text) Then
flag = 1
Exit For
End If
Next
If flag = 1 Then
MessageBox.Show("在数组中")
Else
MessageBox.Show("不在数组中")
End If
End Sub
#End Region
#Region "从数组中选择位置删除数据"
Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click
Dim b(5) As Integer
Dim i2, j2 As Integer
Label3.Text = "删除前数组为:" & vbNewLine
For i2 = 0 To 5
b(i2) = Int(Rnd() * 20) + 5
Label3.Text &= " " & b(i2)
Next i2
j2 = Conversion.Int(TextBox6.Text)
For i2 = j2 To 4
b(i2) = b(i2 + 1)
Next
ReDim Preserve b(4)
Label4.Text = "删除后的数组为:" & vbNewLine
For i2 = 0 To 4
Label4.Text &= " " & b(i2)
Next i2
End Sub
#End Region
#Region "function 函数调用"
Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click
Dim n As Integer
n = Val(TextBox7.Text)
TextBox8.Text = y(n)
'定义函数y(n)
End Sub
'定义函数
Function y(ByVal m As Integer)
Dim i3 As Integer
Dim s As Integer
For i3 = 1 To m
s = i3 ^ 2
Next i3
Return s
End Function
#End Region
#Region "PLC通信"
Private mip As IPAddress = IPAddress.Parse("192.168.0.218")
Private mport As Integer = 2000
Private mTcplisten As TcpListener = Nothing
Private mtcpcli As TcpClient = Nothing
Private mStream As NetworkStream = Nothing
Private mTerminate As Boolean = False
Private mReadthread As Thread
Private mWritethread As Thread
Private mRunning As Boolean = False ' 是否在运行
'定义IP地址属性
Public Property IP() As IPAddress
Get
Return mip
End Get
Set(ByVal value As IPAddress)
Me.mip = value
End Set
End Property
'定义端口属性
Public Property port() As Integer
Get
Return mport
End Get
Set(ByVal value As Integer)
Me.mport = value
End Set
End Property
'开始连接
Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button12.Click
Me.tryconnect()
End Sub
'启动连接
Private Sub tryconnect()
If mTcplisten Is Nothing Then
mTcplisten = New TcpListener(mip, mport)
End If
Try
mTcplisten.Start()
mtcpcli = mTcplisten.AcceptTcpClient
mStream = mtcpcli.GetStream
'启动写线程
mTerminate = False
mWritethread = Nothing
mWritethread = New Thread(AddressOf Me.Writethread)
mWritethread.Start()
'启动读线程
mTerminate = False
mReadthread = Nothing
mReadthread = New Thread(AddressOf Me.Readthread)
mReadthread.Start()
Catch ex As Exception
MessageBox.Show("不能连接到PLC")
End Try
End Sub
'读线程
Private Sub Readthread()
Dim buf(1024) As Byte
Try
Dim len As Integer = 6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -